From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2122) id 328FC3858416; Tue, 25 Oct 2022 17:51:18 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 328FC3858416 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1666720278; bh=MEyCAW00ObkRtFkjZSeSgB+YQNq+AGPe93dtXYsiads=; h=From:To:Subject:Date:From; b=ru88fZT2Ar06+z4j360XaPkNhobOnSdEEFjnHoSXAtfaFxsKK9gjnRPi4McxgKKdf F08b/9Vs5aWRzAS6FNf5ENwzzBOTNQMWXvq6JZZgAc39pQFXWmOXqZbUzgoiphT0Kl C5oPjnQQHS1H2+S7FZoQ3fQcOolQ6EibfmnxF6G8= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Jason Merrill To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc/devel/c++-contracts] Merge branch 'master' into devel/c++-contracts X-Act-Checkin: gcc X-Git-Author: Jason Merrill X-Git-Refname: refs/heads/devel/c++-contracts X-Git-Oldrev: 598a58d5539990b56c9a6c73ae1d0ed3445b5498 X-Git-Newrev: 0cda8a7e8366ac1817030cf824c8bfd6e27d9780 Message-Id: <20221025175118.328FC3858416@sourceware.org> Date: Tue, 25 Oct 2022 17:51:18 +0000 (GMT) List-Id: https://gcc.gnu.org/g:0cda8a7e8366ac1817030cf824c8bfd6e27d9780 commit 0cda8a7e8366ac1817030cf824c8bfd6e27d9780 Merge: 598a58d5539 e6a29aab511 Author: Jason Merrill Date: Tue Oct 25 13:50:28 2022 -0400 Merge branch 'master' into devel/c++-contracts Diff: gcc/doc/extend.texi | 19 +- gcc/doc/gty.texi | 21 +- gcc/doc/install.texi | 19 + gcc/doc/invoke.texi | 57 +- gcc/doc/sourcebuild.texi | 6 + gcc/config/i386/i386.opt | 10 + gcc/config/xtensa/xtensa.opt | 4 + gcc/analyzer/exploded-graph.h | 10 +- gcc/analyzer/region-model.h | 70 +- gcc/c-family/c-format.h | 44 +- gcc/c/c-tree.h | 2 +- gcc/common/config/i386/cpuinfo.h | 26 +- gcc/common/config/i386/i386-cpuinfo.h | 9 +- gcc/common/config/i386/i386-isas.h | 3 + .../aarch64/aarch64-sve-builtins-functions.h | 84 +- gcc/config/aarch64/aarch64-sve-builtins.h | 1 + gcc/config/h8300/h8300-protos.h | 1 + gcc/config/h8300/h8300.h | 12 + gcc/config/i386/avx512ifmavlintrin.h | 53 +- gcc/config/i386/avxifmaintrin.h | 78 + gcc/config/i386/avxvnniint8intrin.h | 138 ++ gcc/config/i386/cpuid.h | 2 + gcc/config/i386/i386.h | 16 + gcc/config/i386/immintrin.h | 4 + gcc/config/i386/mingw-mcfgthread.h | 1 + gcc/config/i386/mingw32.h | 13 +- gcc/config/i386/x86-tune-costs.h | 133 ++ gcc/config/mips/mips.h | 27 +- gcc/config/riscv/riscv-protos.h | 17 + gcc/config/riscv/riscv-vector-builtins-bases.h | 33 + gcc/config/riscv/riscv-vector-builtins-shapes.h | 33 + gcc/config/riscv/riscv-vector-builtins.h | 363 ++++ gcc/config/riscv/riscv.h | 2 +- gcc/config/xtensa/xtensa-protos.h | 2 + gcc/config/xtensa/xtensa.h | 8 +- gcc/cp/cp-tree.h | 23 +- gcc/cp/std-name-hint.h | 1436 ++++++++++------ gcc/expmed.h | 2 + gcc/fortran/gfortran.h | 5 +- gcc/fortran/trans-array.h | 2 + gcc/function.h | 4 + gcc/ggc.h | 4 +- gcc/gimple-range-gori.h | 6 +- gcc/gimple-range-infer.h | 1 + gcc/gimple-range-op.h | 4 +- gcc/gimple-range.h | 18 + gcc/gimple.h | 78 + gcc/ipa-prop.h | 277 ++- gcc/range-op.h | 29 +- gcc/range.h | 2 + gcc/real.h | 2 +- gcc/testsuite/gcc.dg/format/format.h | 18 + gcc/testsuite/gcc.dg/torture/floatn-basic.h | 18 +- gcc/testsuite/gcc.target/i386/avx-check.h | 9 +- gcc/testsuite/gcc.target/s390/pr106355.h | 18 + gcc/tree-cfg.h | 4 +- gcc/tree-core.h | 3 + gcc/tree-pass.h | 6 +- gcc/tree-vectorizer.h | 4 + gcc/tree.h | 10 +- gcc/value-range.h | 12 +- gcc/value-relation.h | 126 +- include/cuda/cuda.h | 3 + include/gomp-constants.h | 2 +- libcpp/include/cpplib.h | 11 +- libcpp/include/symtab.h | 5 +- libgcc/config/i386/32/sfp-machine.h | 1 + libgcc/config/i386/64/sfp-machine.h | 1 + libgcc/config/i386/gthr-mcf.h | 36 + libgcc/config/i386/sfp-machine.h | 1 + libgcc/config/i386/shadow-stack-unwind.h | 51 +- libgcc/soft-fp/brain.h | 172 ++ libgcc/unwind-dw2.h | 11 +- libgcc/unwind-generic.h | 2 +- libgomp/config/nvptx/libgomp-nvptx.h | 51 + libgomp/libgomp-plugin.h | 7 + libgomp/libgomp.h | 5 + .../libgomp.c-c++-common/on_device_arch.h | 13 + libiberty/cp-demangle.h | 2 +- libstdc++-v3/config/os/gnu-linux/os_defines.h | 11 + libstdc++-v3/include/bits/charconv.h | 4 +- libstdc++-v3/include/bits/mofunc_impl.h | 5 +- libstdc++-v3/include/bits/std_abs.h | 34 + libstdc++-v3/include/bits/stl_map.h | 2 +- libstdc++-v3/include/bits/stl_pair.h | 3 - libstdc++-v3/include/bits/uses_allocator_args.h | 2 +- libstdc++-v3/include/ext/type_traits.h | 30 + libstdc++-v3/include/precompiled/stdc++.h | 1 + gcc/analyzer/engine.cc | 32 +- gcc/analyzer/region-model-impl-calls.cc | 70 + gcc/analyzer/region-model.cc | 56 +- gcc/analyzer/sm-fd.cc | 56 +- gcc/analyzer/varargs.cc | 38 +- gcc/builtins.cc | 6 +- gcc/c-family/c-common.cc | 4 + gcc/c-family/c-cppbuiltin.cc | 21 +- gcc/c-family/c-format.cc | 76 +- gcc/c-family/c-lex.cc | 21 +- gcc/c-family/c-opts.cc | 12 +- gcc/c/c-decl.cc | 182 +- gcc/c/c-objc-common.cc | 9 +- gcc/c/c-parser.cc | 91 +- gcc/c/c-typeck.cc | 12 +- gcc/c/gimple-parser.cc | 10 + gcc/cgraph.cc | 18 +- gcc/cgraphclones.cc | 1 + gcc/cgraphunit.cc | 14 + gcc/common/config/h8300/h8300-common.cc | 2 + gcc/common/config/i386/i386-common.cc | 79 +- gcc/common/config/riscv/riscv-common.cc | 46 + gcc/config/aarch64/aarch64-sve-builtins-base.cc | 108 +- gcc/config/aarch64/aarch64-sve-builtins-shapes.cc | 8 +- gcc/config/aarch64/aarch64-sve-builtins-sve2.cc | 24 +- gcc/config/aarch64/aarch64-sve-builtins.cc | 15 +- gcc/config/aarch64/aarch64.cc | 485 +++--- gcc/config/gcn/gcn.cc | 29 +- gcc/config/h8300/h8300.cc | 28 +- gcc/config/i386/driver-i386.cc | 5 + gcc/config/i386/i386-builtins.cc | 28 +- gcc/config/i386/i386-c.cc | 11 + gcc/config/i386/i386-expand.cc | 67 + gcc/config/i386/i386-options.cc | 12 +- gcc/config/i386/i386.cc | 65 +- gcc/config/i386/x86-tune-sched.cc | 2 + gcc/config/microblaze/microblaze.cc | 19 +- gcc/config/mips/mips.cc | 8 +- gcc/config/riscv/riscv-builtins.cc | 42 +- gcc/config/riscv/riscv-vector-builtins-bases.cc | 104 ++ gcc/config/riscv/riscv-vector-builtins-shapes.cc | 104 ++ gcc/config/riscv/riscv-vector-builtins.cc | 559 +++++- gcc/config/riscv/riscv.cc | 47 +- gcc/config/rs6000/rs6000-string.cc | 4 +- gcc/config/rs6000/rs6000.cc | 4 +- gcc/config/s390/s390.cc | 47 +- gcc/config/sparc/sparc.cc | 24 +- gcc/config/xtensa/xtensa.cc | 83 +- gcc/cp/call.cc | 190 ++- gcc/cp/constexpr.cc | 250 ++- gcc/cp/cp-gimplify.cc | 26 +- gcc/cp/cxxapi-data.csv | 1032 ++++++++++++ gcc/cp/decl.cc | 3 +- gcc/cp/module.cc | 80 +- gcc/cp/parser.cc | 10 +- gcc/cp/pt.cc | 41 +- gcc/cp/rtti.cc | 4 + gcc/cp/semantics.cc | 36 +- gcc/cp/typeck.cc | 229 ++- gcc/cp/vtable-class-hierarchy.cc | 20 +- gcc/diagnostic-format-sarif.cc | 2 +- gcc/expmed.cc | 2 +- gcc/expr.cc | 157 +- gcc/fold-const-call.cc | 1 + gcc/fortran/arith.cc | 60 +- gcc/fortran/expr.cc | 10 +- gcc/fortran/resolve.cc | 5 + gcc/fortran/simplify.cc | 2 +- gcc/fortran/trans-array.cc | 46 + gcc/fortran/trans-decl.cc | 16 +- gcc/fortran/trans-expr.cc | 12 +- gcc/fortran/trans-types.cc | 2 +- gcc/gengtype.cc | 25 +- gcc/ggc-common.cc | 7 +- gcc/gimple-expr.cc | 2 +- gcc/gimple-low.cc | 395 +++++ gcc/gimple-pretty-print.cc | 29 + gcc/gimple-range-cache.cc | 2 +- gcc/gimple-range-fold.cc | 5 +- gcc/gimple-range-gori.cc | 43 +- gcc/gimple-range-infer.cc | 54 + gcc/gimple-range-op.cc | 79 +- gcc/gimple-range.cc | 190 +++ gcc/gimple-ssa-isolate-paths.cc | 6 +- gcc/gimple-ssa-warn-access.cc | 8 +- gcc/gimple-walk.cc | 13 + gcc/gimple.cc | 19 + gcc/gimplify.cc | 36 +- gcc/internal-fn.cc | 1 - gcc/ipa-cp.cc | 1220 +++++++------- gcc/ipa-fnsummary.cc | 105 +- gcc/ipa-prop.cc | 372 ++-- gcc/ipa-visibility.cc | 19 + gcc/lto-streamer-in.cc | 1 + gcc/lto-streamer-out.cc | 1 + gcc/lto-wrapper.cc | 4 +- gcc/omp-expand.cc | 13 +- gcc/omp-low.cc | 4 + gcc/omp-oacc-kernels-decompose.cc | 1 + gcc/passes.cc | 11 +- gcc/profile.cc | 12 +- gcc/range-op-float.cc | 392 +++-- gcc/range-op.cc | 267 +-- gcc/stringpool.cc | 7 + gcc/testsuite/c-c++-common/dfp/compare-eq-const.c | 1 + gcc/testsuite/c-c++-common/dfp/convert-bfp-10.c | 1 + gcc/testsuite/c-c++-common/pointer-to-fn1.c | 1 + gcc/testsuite/c-c++-common/pr107358.c | 30 + gcc/testsuite/c-c++-common/ubsan/pr106990.c | 29 + gcc/testsuite/g++.dg/cpp0x/dr2351-2.C | 16 + gcc/testsuite/g++.dg/cpp0x/nsdmi-union1.C | 4 +- gcc/testsuite/g++.dg/cpp0x/variadic-tuple.C | 1 + gcc/testsuite/g++.dg/cpp1y/constexpr-105774.C | 15 + gcc/testsuite/g++.dg/cpp1z/constexpr-96862.C | 2 +- gcc/testsuite/g++.dg/cpp1z/decomp12.C | 4 +- gcc/testsuite/g++.dg/cpp23/attr-assume-opt.C | 42 + gcc/testsuite/g++.dg/cpp23/attr-assume10.C | 22 + gcc/testsuite/g++.dg/cpp23/attr-assume2.C | 4 +- gcc/testsuite/g++.dg/cpp23/attr-assume5.C | 5 + gcc/testsuite/g++.dg/cpp23/attr-assume6.C | 5 + gcc/testsuite/g++.dg/cpp23/attr-assume7.C | 56 + gcc/testsuite/g++.dg/cpp23/attr-assume8.C | 12 + gcc/testsuite/g++.dg/cpp23/attr-assume9.C | 19 + gcc/testsuite/g++.dg/cpp2a/concepts-friend10.C | 24 + gcc/testsuite/g++.dg/cpp2a/decomp4.C | 8 + gcc/testsuite/g++.dg/ext/vector42.C | 12 + gcc/testsuite/g++.dg/freestanding-main.C | 5 + gcc/testsuite/g++.dg/freestanding-nonint-main.C | 5 + gcc/testsuite/g++.dg/gcov/gcov-1.C | 8 +- gcc/testsuite/g++.dg/modules/cexpr-3_a.C | 14 + gcc/testsuite/g++.dg/modules/cexpr-3_b.C | 7 + gcc/testsuite/g++.dg/modules/concept-7_a.C | 7 + gcc/testsuite/g++.dg/modules/concept-7_b.C | 7 + gcc/testsuite/g++.dg/modules/pr105045_a.C | 7 + gcc/testsuite/g++.dg/modules/pr105045_b.C | 6 + gcc/testsuite/g++.dg/modules/pr106304_a.C | 12 + gcc/testsuite/g++.dg/modules/pr106304_b.C | 8 + gcc/testsuite/g++.dg/other/i386-2.C | 2 +- gcc/testsuite/g++.dg/other/i386-3.C | 2 +- gcc/testsuite/g++.dg/other/thunk1.C | 1 + gcc/testsuite/g++.dg/pch/pch-string-nulls.C | 3 + gcc/testsuite/g++.dg/tree-ssa/pr105820.c | 26 + gcc/testsuite/g++.dg/tree-ssa/pr107206.C | 27 + gcc/testsuite/g++.dg/vect/pr64410.cc | 1 + gcc/testsuite/g++.dg/vect/pr89653.cc | 1 + gcc/testsuite/g++.dg/warn/Wuseless-cast.C | 12 +- gcc/testsuite/g++.dg/warn/Wuseless-cast3.C | 29 + gcc/testsuite/g++.old-deja/g++.brendan/copy9.C | 1 + gcc/testsuite/g++.old-deja/g++.brendan/overload7.C | 1 + .../g++.target/i386/bfloat_cpp_typecheck.C | 4 +- gcc/testsuite/g++.target/i386/excess-precision-1.C | 6 + .../g++.target/i386/excess-precision-10.C | 6 + .../g++.target/i386/excess-precision-11.C | 105 ++ .../g++.target/i386/excess-precision-12.C | 20 + gcc/testsuite/g++.target/i386/excess-precision-2.C | 5 + gcc/testsuite/g++.target/i386/excess-precision-3.C | 6 + gcc/testsuite/g++.target/i386/excess-precision-4.C | 7 + gcc/testsuite/g++.target/i386/excess-precision-5.C | 32 + gcc/testsuite/g++.target/i386/excess-precision-6.C | 19 + gcc/testsuite/g++.target/i386/excess-precision-8.C | 7 + gcc/testsuite/g++.target/i386/mv29.C | 5 + gcc/testsuite/gcc.dg/Wstringop-overflow-89.c | 16 + gcc/testsuite/gcc.dg/analyzer/pipe-1.c | 38 + gcc/testsuite/gcc.dg/analyzer/pipe-glibc.c | 71 + gcc/testsuite/gcc.dg/analyzer/pipe-manpages.c | 76 + gcc/testsuite/gcc.dg/analyzer/pipe2-1.c | 38 + gcc/testsuite/gcc.dg/analyzer/pr107345.c | 17 + gcc/testsuite/gcc.dg/analyzer/sarif-pr107366.c | 20 + gcc/testsuite/gcc.dg/analyzer/stdarg-1-ms_abi.c | 443 +++++ gcc/testsuite/gcc.dg/analyzer/stdarg-1-sysv_abi.c | 443 +++++ gcc/testsuite/gcc.dg/analyzer/stdarg-1.c | 6 + gcc/testsuite/gcc.dg/attr-assume-4.c | 12 + gcc/testsuite/gcc.dg/attr-assume-5.c | 10 + gcc/testsuite/gcc.dg/c11-complit-1.c | 7 + gcc/testsuite/gcc.dg/c11-complit-2.c | 7 + gcc/testsuite/gcc.dg/c11-complit-3.c | 7 + gcc/testsuite/gcc.dg/c11-enum-1.c | 14 + gcc/testsuite/gcc.dg/c11-enum-2.c | 14 + gcc/testsuite/gcc.dg/c11-enum-3.c | 14 + gcc/testsuite/gcc.dg/c2x-complit-2.c | 48 + gcc/testsuite/gcc.dg/c2x-complit-3.c | 24 + gcc/testsuite/gcc.dg/c2x-complit-4.c | 60 + gcc/testsuite/gcc.dg/c2x-complit-5.c | 52 + gcc/testsuite/gcc.dg/c2x-complit-6.c | 7 + gcc/testsuite/gcc.dg/c2x-complit-7.c | 7 + gcc/testsuite/gcc.dg/c2x-enum-1.c | 109 ++ gcc/testsuite/gcc.dg/c2x-enum-2.c | 14 + gcc/testsuite/gcc.dg/c2x-enum-3.c | 14 + gcc/testsuite/gcc.dg/c2x-enum-4.c | 14 + gcc/testsuite/gcc.dg/c2x-enum-5.c | 12 + gcc/testsuite/gcc.dg/c2x-float-7.c | 49 - gcc/testsuite/gcc.dg/c2x-float-7a.c | 32 + gcc/testsuite/gcc.dg/c2x-float-7b.c | 32 + gcc/testsuite/gcc.dg/c2x-float-7c.c | 32 + gcc/testsuite/gcc.dg/c90-complit-2.c | 8 + gcc/testsuite/gcc.dg/c99-tag-4.c | 8 + gcc/testsuite/gcc.dg/c99-tag-5.c | 8 + gcc/testsuite/gcc.dg/c99-tag-6.c | 9 + gcc/testsuite/gcc.dg/cpp/c2x-ucnid-1-utf8.c | 13 + gcc/testsuite/gcc.dg/cpp/c2x-ucnid-1.c | 13 + gcc/testsuite/gcc.dg/debug/btf/btf-function-3.c | 2 +- gcc/testsuite/gcc.dg/format/c11-printf-1.c | 27 +- gcc/testsuite/gcc.dg/format/c11-scanf-1.c | 28 +- gcc/testsuite/gcc.dg/format/c2x-printf-1.c | 113 +- gcc/testsuite/gcc.dg/format/c2x-scanf-1.c | 121 +- gcc/testsuite/gcc.dg/format/ext-9.c | 10 +- gcc/testsuite/gcc.dg/freestanding-main.c | 5 + gcc/testsuite/gcc.dg/freestanding-nonint-main.c | 5 + gcc/testsuite/gcc.dg/gimplefe-error-15.c | 13 + gcc/testsuite/gcc.dg/gnu2x-complit-1.c | 7 + gcc/testsuite/gcc.dg/gnu2x-complit-2.c | 18 + gcc/testsuite/gcc.dg/ipa/ipcp-agg-11.c | 4 +- gcc/testsuite/gcc.dg/ipa/ipcp-agg-8.c | 4 +- gcc/testsuite/gcc.dg/noreturn-4.c | 10 - gcc/testsuite/gcc.dg/pr106781.c | 18 + gcc/testsuite/gcc.dg/pr107262.c | 13 + gcc/testsuite/gcc.dg/pr30260.c | 6 +- gcc/testsuite/gcc.dg/pr54346.c | 2 +- gcc/testsuite/gcc.dg/pr95115.c | 2 +- gcc/testsuite/gcc.dg/tls/vis-attr-gd.c | 12 + gcc/testsuite/gcc.dg/tls/vis-attr-hidden-gd.c | 13 + gcc/testsuite/gcc.dg/tls/vis-attr-hidden.c | 12 + gcc/testsuite/gcc.dg/tls/vis-flag-hidden-gd.c | 13 + gcc/testsuite/gcc.dg/tls/vis-flag-hidden.c | 12 + gcc/testsuite/gcc.dg/tls/vis-pragma-hidden-gd.c | 17 + gcc/testsuite/gcc.dg/tls/vis-pragma-hidden.c | 16 + gcc/testsuite/gcc.dg/torture/bfloat16-basic.c | 11 + .../torture/bfloat16-builtin-issignaling-1.c | 21 + gcc/testsuite/gcc.dg/torture/bfloat16-builtin.c | 47 + gcc/testsuite/gcc.dg/torture/bfloat16-complex.c | 61 + .../gcc.dg/torture/builtin-issignaling-1.c | 47 +- gcc/testsuite/gcc.dg/torture/float32x-nan-floath.c | 2 +- gcc/testsuite/gcc.dg/torture/float32x-nan.c | 2 +- gcc/testsuite/gcc.dg/torture/float64-nan-floath.c | 2 +- gcc/testsuite/gcc.dg/torture/float64-nan.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-1-float.c | 21 + gcc/testsuite/gcc.dg/torture/inf-compare-1.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-2-float.c | 21 + gcc/testsuite/gcc.dg/torture/inf-compare-2.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-3-float.c | 21 + gcc/testsuite/gcc.dg/torture/inf-compare-3.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-4-float.c | 21 + gcc/testsuite/gcc.dg/torture/inf-compare-4.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-5-float.c | 19 + gcc/testsuite/gcc.dg/torture/inf-compare-5.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-6-float.c | 19 + gcc/testsuite/gcc.dg/torture/inf-compare-6.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-7-float.c | 19 + gcc/testsuite/gcc.dg/torture/inf-compare-7.c | 2 +- gcc/testsuite/gcc.dg/torture/inf-compare-8-float.c | 19 + gcc/testsuite/gcc.dg/torture/inf-compare-8.c | 2 +- gcc/testsuite/gcc.dg/torture/pr107176.c | 22 + gcc/testsuite/gcc.dg/torture/pr107301.c | 15 + gcc/testsuite/gcc.dg/torture/pr25183.c | 8 +- gcc/testsuite/gcc.dg/torture/pr52451.c | 2 +- gcc/testsuite/gcc.dg/torture/pr82692.c | 2 +- gcc/testsuite/gcc.dg/tree-ssa/forwprop-19.c | 4 +- gcc/testsuite/gcc.dg/tree-ssa/pr107195-3.c | 112 ++ gcc/testsuite/gcc.dg/tree-ssa/pr107273-1.c | 31 + gcc/testsuite/gcc.dg/tree-ssa/pr107273-2.c | 27 + gcc/testsuite/gcc.dg/tree-ssa/pr107293.c | 32 + gcc/testsuite/gcc.dg/tree-ssa/pr107323.c | 28 + gcc/testsuite/gcc.dg/tree-ssa/pr107355.c | 13 + gcc/testsuite/gcc.dg/tree-ssa/vrp-float-3a.c | 19 + gcc/testsuite/gcc.dg/tree-ssa/vrp-float-4a.c | 23 + gcc/testsuite/gcc.dg/tree-ssa/vrp-float-5a.c | 16 + gcc/testsuite/gcc.dg/vect/pr100756.c | 15 + gcc/testsuite/gcc.dg/vect/pr107275.c | 15 + gcc/testsuite/gcc.dg/vect/pr107302.c | 13 + gcc/testsuite/gcc.dg/vect/pr107326.c | 24 + gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s252.c | 2 +- gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s254.c | 2 +- gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s291.c | 2 +- gcc/testsuite/gcc.dg/vect/vect-bitfield-read-7.c | 43 + gcc/testsuite/gcc.dg/vect/vect-recurr-1.c | 38 + gcc/testsuite/gcc.dg/vect/vect-recurr-2.c | 39 + gcc/testsuite/gcc.dg/vect/vect-recurr-3.c | 39 + gcc/testsuite/gcc.dg/vect/vect-recurr-4.c | 42 + gcc/testsuite/gcc.dg/vect/vect-recurr-5.c | 43 + gcc/testsuite/gcc.dg/vect/vect-recurr-6.c | 39 + gcc/testsuite/gcc.misc-tests/gcov-4.c | 30 +- gcc/testsuite/gcc.target/aarch64/pr106583.c | 41 + .../gcc.target/aarch64/sve/acle/general/brka_1.c | 5 +- .../gcc.target/aarch64/sve/acle/general/brkb_1.c | 5 +- .../gcc.target/aarch64/sve/acle/general/brkn_1.c | 5 +- .../gcc.target/aarch64/sve/acle/general/brkn_2.c | 23 + gcc/testsuite/gcc.target/i386/avx-ifma-1.c | 20 + gcc/testsuite/gcc.target/i386/avx-ifma-2.c | 21 + gcc/testsuite/gcc.target/i386/avx-ifma-3.c | 16 + gcc/testsuite/gcc.target/i386/avx-ifma-4.c | 16 + gcc/testsuite/gcc.target/i386/avx-ifma-5.c | 10 + gcc/testsuite/gcc.target/i386/avx-ifma-6.c | 20 + .../gcc.target/i386/avx-ifma-vpmaddhuq-2.c | 72 + .../gcc.target/i386/avx-ifma-vpmaddluq-2.c | 61 + ...fma-vpmaddhuq-1.c => avx512ifma-vpmaddhuq-1a.c} | 0 .../gcc.target/i386/avx512ifma-vpmaddhuq-1b.c | 33 + ...fma-vpmaddluq-1.c => avx512ifma-vpmaddluq-1a.c} | 0 .../gcc.target/i386/avx512ifma-vpmaddluq-1b.c | 33 + gcc/testsuite/gcc.target/i386/avxvnniint8-1.c | 43 + .../gcc.target/i386/avxvnniint8-vpdpbssd-2.c | 72 + .../gcc.target/i386/avxvnniint8-vpdpbssds-2.c | 72 + .../gcc.target/i386/avxvnniint8-vpdpbsud-2.c | 72 + .../gcc.target/i386/avxvnniint8-vpdpbsuds-2.c | 72 + .../gcc.target/i386/avxvnniint8-vpdpbuud-2.c | 72 + .../gcc.target/i386/avxvnniint8-vpdpbuuds-2.c | 72 + gcc/testsuite/gcc.target/i386/excess-precision-1.c | 6 + .../gcc.target/i386/excess-precision-10.c | 6 + gcc/testsuite/gcc.target/i386/excess-precision-2.c | 6 + gcc/testsuite/gcc.target/i386/excess-precision-3.c | 10 + gcc/testsuite/gcc.target/i386/excess-precision-7.c | 6 + gcc/testsuite/gcc.target/i386/excess-precision-8.c | 6 + gcc/testsuite/gcc.target/i386/excess-precision-9.c | 6 + gcc/testsuite/gcc.target/i386/pr107271.c | 16 + gcc/testsuite/gcc.target/i386/pr107312.c | 11 + gcc/testsuite/gcc.target/i386/pr107322.c | 33 + gcc/testsuite/gcc.target/i386/sse-12.c | 2 +- gcc/testsuite/gcc.target/i386/sse-13.c | 2 +- gcc/testsuite/gcc.target/i386/sse-14.c | 2 +- gcc/testsuite/gcc.target/i386/sse-22.c | 4 +- gcc/testsuite/gcc.target/i386/sse-23.c | 2 +- .../i386/sse2-bfloat16-scalar-typecheck.c | 188 +-- .../gcc.target/i386/vect-bfloat16-typecheck_1.c | 98 +- .../gcc.target/i386/vect-bfloat16-typecheck_2.c | 96 +- .../gcc.target/i386/vnniint8-auto-vectorize-1.c | 28 + .../gcc.target/i386/vnniint8-auto-vectorize-2.c | 75 + gcc/testsuite/gcc.target/mips/compact-branches-1.c | 2 +- gcc/testsuite/gcc.target/mips/compact-branches-8.c | 10 + gcc/testsuite/gcc.target/mips/compact-branches-9.c | 10 + gcc/testsuite/gcc.target/riscv/rvv/base/vsetvl-1.c | 750 +++++++++ gcc/testsuite/gcc.target/s390/pr106355-1.c | 42 + gcc/testsuite/gcc.target/s390/pr106355-2.c | 8 + gcc/testsuite/gcc.target/s390/pr106355-3.c | 8 + gcc/tree-cfg.cc | 23 +- gcc/tree-if-conv.cc | 30 +- gcc/tree-inline.cc | 5 + gcc/tree-loop-distribution.cc | 50 +- gcc/tree-scalar-evolution.cc | 326 ++-- gcc/tree-sra.cc | 7 + gcc/tree-ssa-ccp.cc | 6 + gcc/tree-ssa-dom.cc | 6 +- gcc/tree-ssa-loop-niter.cc | 1 + gcc/tree-vect-loop.cc | 286 +++- gcc/tree-vect-patterns.cc | 37 +- gcc/tree-vect-slp.cc | 71 +- gcc/tree-vect-stmts.cc | 17 +- gcc/tree-vrp.cc | 69 + gcc/tree.cc | 28 +- gcc/value-query.cc | 2 +- gcc/value-range.cc | 70 +- gcc/value-relation.cc | 23 +- gcc/varasm.cc | 32 +- gcc/vtable-verify.cc | 12 +- libcpp/charset.cc | 4 +- libcpp/expr.cc | 23 +- libcpp/init.cc | 52 +- libcpp/lex.cc | 13 +- libgcc/soft-fp/extendbfsf2.c | 49 + libgcc/soft-fp/truncbfhf2.c | 75 + libgcc/soft-fp/truncdfbf2.c | 52 + libgcc/soft-fp/trunchfbf2.c | 58 + libgcc/soft-fp/truncsfbf2.c | 48 + libgcc/soft-fp/trunctfbf2.c | 52 + libgcc/soft-fp/truncxfbf2.c | 52 + libgomp/config/nvptx/icv-device.c | 2 +- libgomp/config/nvptx/target.c | 54 +- libgomp/libgomp-plugin.c | 12 + libgomp/plugin/plugin-nvptx.c | 107 +- libgomp/target.c | 19 + .../testsuite/libgomp.c-c++-common/requires-4a.c | 39 + libgomp/testsuite/libgomp.c/reverse-offload-sm30.c | 2 +- .../libgomp.oacc-c-c++-common/nvptx-sese-1.c | 2 +- .../libgomp.oacc-c-c++-common/private-big-1.c | 100 ++ libiberty/cp-demangle.c | 14 +- libstdc++-v3/libsupc++/atexit_thread.cc | 20 + libstdc++-v3/libsupc++/eh_alloc.cc | 20 +- libstdc++-v3/libsupc++/guard.cc | 31 + libstdc++-v3/src/c++11/debug.cc | 29 +- libstdc++-v3/src/c++11/thread.cc | 9 + .../18_support/headers/limits/synopsis_cxx23.cc | 43 + .../18_support/headers/stdfloat/types_std.cc | 40 + .../testsuite/20_util/from_chars/constexpr.cc | 57 + .../testsuite/20_util/move_only_function/call.cc | 11 + .../testsuite/20_util/to_chars/constexpr.cc | 172 ++ libstdc++-v3/testsuite/20_util/to_chars/version.cc | 16 + .../testsuite/20_util/uses_allocator/lwg3677.cc | 52 + .../cmath/c99_classification_macros_c++23.cc | 96 ++ .../headers/cmath/functions_std_c++23.cc | 146 ++ .../26_numerics/headers/cmath/nextafter_c++23.cc | 125 ++ libstdc++-v3/testsuite/26_numerics/numbers/4.cc | 122 ++ .../29_atomics/atomic_float/requirements_cxx23.cc | 112 ++ .../testsuite/std/ranges/adaptors/stride/1.cc | 93 + libstdc++-v3/testsuite/std/ranges/repeat/1.cc | 33 + config/gthr.m4 | 1 + configure.ac | 6 + gcc/builtin-types.def | 4 + gcc/builtins.def | 1 + gcc/c-family/c-common.def | 7 +- gcc/config.gcc | 38 +- gcc/config.in | 16 +- gcc/config/aarch64/aarch64-sve.md | 94 +- gcc/config/aarch64/iterators.md | 2 + gcc/config/h8300/combiner.md | 40 +- gcc/config/h8300/constraints.md | 35 +- gcc/config/h8300/extensions.md | 18 + gcc/config/h8300/movepush.md | 78 +- gcc/config/i386/i386-builtin.def | 42 +- gcc/config/i386/i386-isa.def | 2 + gcc/config/i386/i386.md | 91 +- gcc/config/i386/sse.md | 188 ++- gcc/config/i386/{znver1.md => znver.md} | 0 gcc/config/riscv/riscv-cores.def | 35 +- .../riscv/riscv-vector-builtins-functions.def | 43 + gcc/config/riscv/riscv-vector-builtins-types.def | 50 + gcc/config/riscv/riscv-vector-builtins.def | 245 ++- gcc/config/riscv/riscv-vector-switch.def | 4 - gcc/config/riscv/riscv.md | 3 +- gcc/config/riscv/sync.md | 15 +- gcc/config/riscv/vector.md | 72 + gcc/config/rs6000/rs6000.md | 31 +- gcc/config/s390/s390.md | 7 +- gcc/config/xtensa/constraints.md | 2 +- gcc/config/xtensa/predicates.md | 2 +- gcc/config/xtensa/xtensa.md | 36 +- gcc/configure.ac | 6 +- gcc/cp/Make-lang.in | 19 +- gcc/cp/gen-cxxapi-file.py | 190 +++ gcc/cp/std-name-hint.gperf | 332 +++- gcc/gimple.def | 5 + gcc/gsstruct.def | 1 + gcc/match.pd | 21 +- gcc/passes.def | 1 + gcc/testsuite/g++.dg/pch/pch-string-nulls.Hs | Bin 0 -> 78 bytes gcc/testsuite/gcc.target/i386/funcspec-56.inc | 6 + gcc/testsuite/gcc.target/mips/mips.exp | 4 +- gcc/testsuite/gfortran.dg/PR100097.f90 | 41 + gcc/testsuite/gfortran.dg/PR100098.f90 | 45 + gcc/testsuite/gfortran.dg/array_constructor_56.f90 | 22 + gcc/testsuite/gfortran.dg/array_constructor_57.f90 | 30 + .../gfortran.dg/c-interop/deferred-character-2.f90 | 2 +- gcc/testsuite/gfortran.dg/char4_decl-2.f90 | 63 + gcc/testsuite/gfortran.dg/char4_decl.f90 | 56 + gcc/testsuite/gfortran.dg/der_io_5.f90 | 17 + .../gfortran.dg/gomp/target-device-ancestor-6.f90 | 17 + gcc/testsuite/gfortran.dg/pr104330.f90 | 20 + gcc/testsuite/gfortran.dg/pr105633.f90 | 8 + gcc/testsuite/gfortran.dg/pr107272.f90 | 21 + gcc/testsuite/gfortran.dg/vect/pr107254.f90 | 49 + gcc/testsuite/gnat.dg/specs/coverage1.ads | 10 + gcc/testsuite/gnat.dg/specs/variant_part.ads | 1 + gcc/testsuite/gnat.dg/specs/weak1.ads | 2 + gcc/testsuite/lib/g++-dg.exp | 11 +- gcc/testsuite/lib/target-supports.exp | 119 +- gcc/timevar.def | 1 + libatomic/configure.tgt | 2 +- libgcc/Makefile.in | 2 +- libgcc/config.host | 6 + libgcc/config/i386/libgcc-glibc.ver | 10 + libgcc/unwind.inc | 4 +- libgomp/libgomp.map | 5 + libgomp/plugin/cuda-lib.def | 1 + libgomp/testsuite/lib/libgomp.exp | 12 + libiberty/acinclude.m4 | 14 +- libobjc/configure.ac | 1 + libsanitizer/configure.ac | 3 +- libstdc++-v3/acinclude.m4 | 5 +- libstdc++-v3/include/Makefile.am | 1 + libstdc++-v3/include/Makefile.in | 1 + ChangeLog | 6 + config/ChangeLog | 5 + configure | 6 + contrib/ChangeLog | 5 + contrib/gcc_update | 1 + gcc/ChangeLog | 1431 ++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 84 + gcc/c-family/ChangeLog | 48 + gcc/c/ChangeLog | 65 + gcc/config/mips/t-linux64 | 21 +- gcc/config/riscv/t-riscv | 28 +- gcc/configure | 11 +- gcc/cp/ChangeLog | 201 +++ gcc/fortran/ChangeLog | 71 + gcc/testsuite/ChangeLog | 623 +++++++ include/ChangeLog | 17 + libatomic/ChangeLog | 4 + libcpp/ChangeLog | 22 + libgcc/ChangeLog | 55 + libgcc/config/i386/t-mingw-mcfgthread | 1 + libgcc/config/i386/t-slibgcc-cygming | 6 +- libgcc/config/i386/t-softfp | 11 +- libgcc/configure | 1 + libgomp/ChangeLog | 68 + libiberty/ChangeLog | 19 + libiberty/configure | 14 +- libiberty/testsuite/demangle-expected | 4 + libitm/ChangeLog | 5 + libobjc/ChangeLog | 5 + libobjc/configure | 5 +- libsanitizer/ChangeLog | 10 + libsanitizer/configure | 1 + libstdc++-v3/ChangeLog | 192 +++ libstdc++-v3/configure | 18 +- libstdc++-v3/include/bits/c++config | 14 + libstdc++-v3/include/c_global/cmath | 1775 ++++++++++++++++++++ libstdc++-v3/include/std/atomic | 85 + libstdc++-v3/include/std/charconv | 84 +- libstdc++-v3/include/std/iostream | 6 +- libstdc++-v3/include/std/limits | 183 ++ libstdc++-v3/include/std/numbers | 152 +- libstdc++-v3/include/std/ranges | 407 +++++ libstdc++-v3/include/std/stdfloat | 62 + libstdc++-v3/include/std/type_traits | 30 + libstdc++-v3/include/std/version | 1 + 601 files changed, 25841 insertions(+), 4299 deletions(-)