https://gcc.gnu.org/g:ec26db53513f9de267b85c1c8f8db838dcd09d36
commit ec26db53513f9de267b85c1c8f8db838dcd09d36 Merge: 333fe5b0f141 9b5b2c9f9505 Author: Thomas Schwinge <tschwi...@baylibre.com> Date: Mon Mar 11 00:59:26 2024 +0100 Merge commit 'b1c06fd9723453dd2b2ec306684cb806dc2b4fbb^' into HEAD Diff: ChangeLog | 4 + gcc/ChangeLog | 515 +++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 30 + gcc/ada/contracts.adb | 25 +- gcc/ada/exp_ch3.adb | 4 + gcc/ada/exp_ch7.adb | 28 +- gcc/ada/gcc-interface/decl.cc | 22 + gcc/ada/gcc-interface/gigi.h | 6 + gcc/ada/gcc-interface/utils.cc | 95 ++ gcc/ada/sem_ch3.adb | 12 +- gcc/attribs.cc | 6 + gcc/builtins.cc | 3 +- gcc/builtins.h | 1 + gcc/c-family/ChangeLog | 24 + gcc/c-family/c-attribs.cc | 50 +- gcc/c-family/c-common.cc | 4 +- gcc/c-family/c-omp.cc | 2 + gcc/c-family/c-opts.cc | 44 +- gcc/c-family/c.opt | 12 + gcc/c/ChangeLog | 21 + gcc/c/c-parser.cc | 23 + gcc/c/gimple-parser.cc | 77 +- gcc/config.in | 6 + gcc/config/darwin-protos.h | 11 + gcc/config/darwin.cc | 33 +- gcc/config/darwin.h | 34 +- gcc/config/iq2000/iq2000.md | 2 +- gcc/config/iq2000/predicates.md | 9 + gcc/config/loongarch/genopts/loongarch.opt.in | 7 +- gcc/config/loongarch/gnu-user.h | 3 +- gcc/config/loongarch/loongarch-driver.h | 2 +- gcc/config/loongarch/loongarch-opts.h | 4 + gcc/config/loongarch/loongarch.opt | 7 +- gcc/config/riscv/autovec-opt.md | 922 +++++++++----------- gcc/config/riscv/autovec.md | 385 +++----- gcc/config/riscv/constraints.md | 20 + gcc/config/riscv/predicates.md | 38 +- gcc/config/riscv/riscv-protos.h | 6 +- gcc/config/riscv/riscv-v.cc | 51 +- gcc/config/riscv/riscv-vector-builtins.cc | 4 +- gcc/config/riscv/riscv-vsetvl.cc | 9 +- gcc/config/riscv/riscv.cc | 49 +- gcc/config/riscv/t-riscv | 4 +- gcc/config/riscv/vector-iterators.md | 601 ++++++++++++- gcc/config/riscv/vector.md | 965 +++++++++------------ gcc/config/rs6000/rs6000.cc | 4 +- gcc/config/rs6000/rs6000.h | 6 + gcc/config/rs6000/rs6000.md | 40 +- gcc/configure | 73 +- gcc/configure.ac | 21 +- gcc/cp/ChangeLog | 173 ++++ gcc/cp/call.cc | 54 +- gcc/cp/class.cc | 65 +- gcc/cp/constexpr.cc | 23 +- gcc/cp/cp-gimplify.cc | 145 +++- gcc/cp/cp-tree.h | 44 +- gcc/cp/cvt.cc | 9 +- gcc/cp/cxx-pretty-print.cc | 19 +- gcc/cp/decl2.cc | 74 +- gcc/cp/mapper-client.cc | 5 + gcc/cp/mapper-client.h | 1 + gcc/cp/method.cc | 6 + gcc/cp/module.cc | 24 +- gcc/cp/name-lookup.cc | 20 +- gcc/cp/parser.cc | 176 +++- gcc/cp/parser.h | 4 + gcc/cp/pt.cc | 90 +- gcc/cp/ptree.cc | 5 +- gcc/cp/semantics.cc | 27 +- gcc/cp/tree.cc | 23 +- gcc/cp/typeck.cc | 41 +- gcc/doc/extend.texi | 61 +- gcc/doc/gm2.texi | 2 +- gcc/doc/invoke.texi | 34 + gcc/dwarf2out.cc | 1 + gcc/expr.cc | 14 +- gcc/fortran/ChangeLog | 7 + gcc/fortran/trans-array.cc | 17 + gcc/gcc.cc | 27 +- gcc/gimple-lower-bitint.cc | 12 +- gcc/gimple-predicate-analysis.cc | 13 +- gcc/gimple-pretty-print.cc | 4 +- gcc/gimple-range-cache.cc | 39 +- gcc/gimplify.cc | 108 ++- gcc/internal-fn.cc | 4 + gcc/ira-color.cc | 21 +- gcc/json.h | 3 + gcc/lto/ChangeLog | 9 + gcc/lto/lto-common.cc | 11 +- gcc/lto/lto-common.h | 1 - gcc/m2/ChangeLog | 153 ++++ gcc/m2/Make-lang.in | 6 +- gcc/m2/config-make.in | 6 +- gcc/m2/configure | 19 + gcc/m2/configure.ac | 7 + gcc/m2/gm2-compiler/M2GCCDeclare.mod | 2 +- gcc/m2/gm2-compiler/M2GenGCC.mod | 280 +++--- gcc/m2/gm2-compiler/M2Options.def | 10 +- gcc/m2/gm2-compiler/M2Options.mod | 25 +- gcc/m2/gm2-compiler/M2Quads.def | 2 +- gcc/m2/gm2-compiler/M2Quads.mod | 81 +- gcc/m2/gm2-compiler/P3Build.bnf | 4 +- gcc/m2/gm2-compiler/SymbolTable.def | 9 + gcc/m2/gm2-compiler/SymbolTable.mod | 27 +- gcc/m2/gm2-gcc/m2builtins.cc | 426 +++++---- gcc/m2/gm2-gcc/m2builtins.def | 11 +- gcc/m2/gm2-gcc/m2builtins.h | 4 +- gcc/m2/gm2-gcc/m2configure.cc | 48 + gcc/m2/gm2-gcc/m2configure.def | 36 +- gcc/m2/gm2-gcc/m2configure.h | 15 +- gcc/m2/gm2-gcc/m2convert.cc | 2 +- gcc/m2/gm2-gcc/m2options.h | 1 + gcc/m2/gm2-gcc/m2statement.cc | 25 +- gcc/m2/gm2-gcc/m2statement.def | 7 + gcc/m2/gm2-gcc/m2statement.h | 2 + gcc/m2/gm2-gcc/m2treelib.cc | 10 +- gcc/m2/gm2-gcc/m2type.cc | 42 +- gcc/m2/gm2-gcc/m2type.def | 7 + gcc/m2/gm2-gcc/m2type.h | 2 + gcc/m2/gm2-lang.cc | 14 + gcc/m2/gm2-libs-log/RealConversions.mod | 48 +- gcc/m2/gm2-libs/Builtins.mod | 1 + gcc/m2/gm2-libs/DynamicStrings.def | 10 +- gcc/m2/gm2-libs/DynamicStrings.mod | 25 + gcc/m2/gm2config.aci.in | 6 + gcc/m2/gm2spec.cc | 24 + gcc/m2/lang.opt | 24 +- gcc/m2/m2pp.cc | 64 +- gcc/m2/mc-boot/GDynamicStrings.cc | 55 +- gcc/m2/mc-boot/GDynamicStrings.h | 7 + gcc/m2/mc-boot/GFIO.cc | 44 +- gcc/m2/mc-boot/GFIO.h | 4 +- gcc/m2/mc-boot/GIO.cc | 13 +- gcc/m2/mc-boot/GRTint.cc | 81 +- gcc/m2/mc-boot/Gdecl.cc | 47 +- gcc/m2/mc-boot/GmcOptions.cc | 155 ++++ gcc/m2/mc-boot/GmcOptions.h | 21 + gcc/m2/mc/decl.mod | 38 +- gcc/m2/mc/mcOptions.def | 24 + gcc/m2/mc/mcOptions.mod | 96 +- gcc/match.pd | 112 +-- gcc/omp-low.cc | 28 +- gcc/optabs.cc | 13 +- gcc/optabs.h | 13 +- gcc/params.opt | 9 + gcc/range-op-float.cc | 111 +-- gcc/range-op-mixed.h | 3 + gcc/simplify-rtx.cc | 4 +- gcc/testsuite/ChangeLog | 572 ++++++++++++ .../c-c++-common/analyzer/compound-assignment-1.c | 7 +- .../c-c++-common/builtin-classify-type-1.c | 105 +++ gcc/testsuite/c-c++-common/cpp/pr61474-2.h | 1 + gcc/testsuite/c-c++-common/cpp/pr61474.c | 5 + gcc/testsuite/c-c++-common/cpp/pr61474.h | 6 + gcc/testsuite/c-c++-common/cpp/pr90400.c | 14 + gcc/testsuite/c-c++-common/gomp/allocate-10.c | 49 ++ gcc/testsuite/c-c++-common/gomp/allocate-11.c | 3 - gcc/testsuite/c-c++-common/gomp/allocate-12.c | 3 - gcc/testsuite/c-c++-common/gomp/allocate-15.c | 4 +- gcc/testsuite/c-c++-common/gomp/allocate-17.c | 37 + gcc/testsuite/c-c++-common/gomp/allocate-9.c | 2 - gcc/testsuite/g++.dg/concepts/diagnostic19.C | 20 + gcc/testsuite/g++.dg/cpp0x/inh-ctor38.C | 19 + gcc/testsuite/g++.dg/cpp0x/static_assert15.C | 2 +- gcc/testsuite/g++.dg/cpp0x/variadic-partial3.C | 19 + gcc/testsuite/g++.dg/cpp0x/vt-57397-1.C | 6 +- gcc/testsuite/g++.dg/cpp0x/vt-57397-2.C | 6 +- gcc/testsuite/g++.dg/cpp23/consteval-if2.C | 3 +- gcc/testsuite/g++.dg/cpp2a/concepts-requires36.C | 16 + gcc/testsuite/g++.dg/cpp2a/consteval-memfn1.C | 7 + gcc/testsuite/g++.dg/cpp2a/consteval11.C | 33 +- gcc/testsuite/g++.dg/cpp2a/consteval3.C | 3 +- gcc/testsuite/g++.dg/cpp2a/consteval32.C | 4 + gcc/testsuite/g++.dg/cpp2a/consteval33.C | 34 + gcc/testsuite/g++.dg/cpp2a/consteval34.C | 33 + gcc/testsuite/g++.dg/cpp2a/consteval35.C | 10 + gcc/testsuite/g++.dg/cpp2a/consteval9.C | 3 +- gcc/testsuite/g++.dg/cpp2a/nontype-class60.C | 18 + gcc/testsuite/g++.dg/expr/discarded1.C | 15 + gcc/testsuite/g++.dg/expr/discarded1a.C | 17 + gcc/testsuite/g++.dg/expr/unary2.C | 8 +- gcc/testsuite/g++.dg/ext/attr-hotness.C | 16 + gcc/testsuite/g++.dg/ext/builtin-classify-type-1.C | 149 ++++ gcc/testsuite/g++.dg/ext/builtin-classify-type-2.C | 11 + gcc/testsuite/g++.dg/gomp/attrs-19.C | 68 ++ gcc/testsuite/g++.dg/gomp/attrs-20.C | 240 +++++ gcc/testsuite/g++.dg/gomp/attrs-21.C | 27 + gcc/testsuite/g++.dg/modules/depflags-f-MD.C | 2 + gcc/testsuite/g++.dg/modules/depflags-f.C | 3 + gcc/testsuite/g++.dg/modules/depflags-fi.C | 4 + gcc/testsuite/g++.dg/modules/depflags-fj-MD.C | 3 + .../g++.dg/modules/depflags-fj-MF-share.C | 6 + gcc/testsuite/g++.dg/modules/depflags-fj.C | 4 + gcc/testsuite/g++.dg/modules/depflags-fjo-MD.C | 4 + gcc/testsuite/g++.dg/modules/depflags-fjo.C | 5 + gcc/testsuite/g++.dg/modules/depflags-fo-MD.C | 3 + gcc/testsuite/g++.dg/modules/depflags-fo.C | 4 + gcc/testsuite/g++.dg/modules/depflags-j-MD.C | 2 + gcc/testsuite/g++.dg/modules/depflags-j.C | 3 + gcc/testsuite/g++.dg/modules/depflags-jo-MD.C | 3 + gcc/testsuite/g++.dg/modules/depflags-jo.C | 4 + gcc/testsuite/g++.dg/modules/depflags-o-MD.C | 2 + gcc/testsuite/g++.dg/modules/depflags-o.C | 3 + gcc/testsuite/g++.dg/modules/depreport-1_a.C | 10 + gcc/testsuite/g++.dg/modules/depreport-1_b.C | 12 + gcc/testsuite/g++.dg/modules/depreport-2.modmap | 2 + gcc/testsuite/g++.dg/modules/depreport-2_a.C | 15 + gcc/testsuite/g++.dg/modules/depreport-2_b.C | 14 + gcc/testsuite/g++.dg/modules/modules.exp | 1 + gcc/testsuite/g++.dg/modules/p1689-1.C | 17 + gcc/testsuite/g++.dg/modules/p1689-1.exp.ddi | 27 + gcc/testsuite/g++.dg/modules/p1689-2.C | 15 + gcc/testsuite/g++.dg/modules/p1689-2.exp.ddi | 16 + gcc/testsuite/g++.dg/modules/p1689-3.C | 13 + gcc/testsuite/g++.dg/modules/p1689-3.exp.ddi | 16 + gcc/testsuite/g++.dg/modules/p1689-4.C | 13 + gcc/testsuite/g++.dg/modules/p1689-4.exp.ddi | 14 + gcc/testsuite/g++.dg/modules/p1689-5.C | 13 + gcc/testsuite/g++.dg/modules/p1689-5.exp.ddi | 14 + gcc/testsuite/g++.dg/modules/p1689-file-default.C | 16 + .../g++.dg/modules/p1689-file-default.exp.ddi | 27 + .../g++.dg/modules/p1689-target-default.C | 16 + .../g++.dg/modules/p1689-target-default.exp.ddi | 27 + gcc/testsuite/g++.dg/modules/test-depfile.py | 207 +++++ gcc/testsuite/g++.dg/modules/test-p1689.py | 222 +++++ gcc/testsuite/g++.dg/overload/template5.C | 4 +- gcc/testsuite/g++.dg/pr110249.C | 16 + gcc/testsuite/g++.dg/template/conv20.C | 17 + gcc/testsuite/g++.dg/template/init7.C | 2 +- gcc/testsuite/g++.dg/template/local6.C | 4 +- gcc/testsuite/g++.dg/template/non-dependent26.C | 25 + gcc/testsuite/g++.dg/template/recurse3.C | 8 +- gcc/testsuite/g++.dg/template/ttp40.C | 25 + gcc/testsuite/g++.dg/template/ttp41.C | 17 + gcc/testsuite/g++.dg/torture/pr111465.C | 55 ++ gcc/testsuite/g++.dg/warn/Wparentheses-32.C | 28 + gcc/testsuite/gcc.c-torture/compile/pr111435-1.c | 18 + gcc/testsuite/gcc.c-torture/compile/pr111442-1.c | 13 + gcc/testsuite/gcc.dg/builtin-classify-type-1.c | 11 + gcc/testsuite/gcc.dg/gimplefe-50.c | 28 + gcc/testsuite/gcc.dg/gimplefe-51.c | 12 + gcc/testsuite/gcc.dg/pr110080.c | 27 + gcc/testsuite/gcc.dg/pr111355.c | 8 + gcc/testsuite/gcc.dg/pr111409.c | 7 + gcc/testsuite/gcc.dg/pr93917.c | 7 +- .../gcc.dg/tree-ssa/{pr111303.c => pr111324.c} | 0 gcc/testsuite/gcc.dg/tree-ssa/vrp-float-13.c | 16 + .../{vrp-float-12.c => vrp-float-relations-1.c} | 0 .../gcc.dg/tree-ssa/vrp-float-relations-2.c | 21 + .../gcc.dg/tree-ssa/vrp-float-relations-3.c | 27 + .../gcc.dg/tree-ssa/vrp-float-relations-4.c | 38 + .../gcc.dg/tree-ssa/vrp-float-relations-5.c | 54 ++ .../gcc.dg/tree-ssa/vrp-float-relations-6.c | 54 ++ gcc/testsuite/gcc.dg/uninit-pr111489.c | 112 +++ .../gcc.target/aarch64/vect_copy_lane_1.c | 2 +- gcc/testsuite/gcc.target/powerpc/clone1.c | 7 +- gcc/testsuite/gcc.target/powerpc/clone3.c | 7 +- gcc/testsuite/gcc.target/powerpc/mod-1.c | 21 +- gcc/testsuite/gcc.target/powerpc/mod-2.c | 11 +- gcc/testsuite/gcc.target/powerpc/p10-vdivq-vmodq.c | 5 +- gcc/testsuite/gcc.target/powerpc/pr110071.c | 15 + .../gcc.target/riscv/rvv/autovec/binop/narrow-1.c | 2 +- .../gcc.target/riscv/rvv/autovec/binop/narrow-2.c | 2 +- .../gcc.target/riscv/rvv/autovec/binop/narrow-3.c | 2 +- .../riscv/rvv/autovec/binop/vdiv-rv32gcv-nofm.c | 6 + .../riscv/rvv/autovec/binop/vdiv-rv32gcv.c | 6 + .../riscv/rvv/autovec/binop/vdiv-rv64gcv-nofm.c | 6 + .../riscv/rvv/autovec/binop/vdiv-rv64gcv.c | 6 + .../riscv/rvv/autovec/binop/vrem-rv32gcv.c | 6 + .../riscv/rvv/autovec/binop/vrem-rv64gcv.c | 6 + .../gcc.target/riscv/rvv/autovec/cmp/vcond-1.c | 2 +- .../gcc.target/riscv/rvv/autovec/cmp/vcond-2.c | 2 +- .../gcc.target/riscv/rvv/autovec/cmp/vcond-3.c | 2 +- .../gcc.target/riscv/rvv/autovec/cmp/vcond-4.c | 2 +- .../gcc.target/riscv/rvv/autovec/partial/slp-18.c | 2 +- .../gcc.target/riscv/rvv/autovec/partial/slp-19.c | 2 +- .../gcc.target/riscv/rvv/autovec/pr110950.c | 2 +- .../gcc.target/riscv/rvv/autovec/pr111486.c | 11 + .../gcc.target/riscv/rvv/autovec/ternop/ternop-1.c | 2 +- .../riscv/rvv/autovec/ternop/ternop-10.c | 2 +- .../riscv/rvv/autovec/ternop/ternop-11.c | 2 +- .../riscv/rvv/autovec/ternop/ternop-12.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-2.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-3.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-4.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-5.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-6.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-7.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-8.c | 2 +- .../gcc.target/riscv/rvv/autovec/ternop/ternop-9.c | 2 +- .../riscv/rvv/autovec/ternop/ternop_nofm-1.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-10.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-11.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-12.c | 4 +- .../riscv/rvv/autovec/ternop/ternop_nofm-2.c | 8 +- .../riscv/rvv/autovec/ternop/ternop_nofm-3.c | 5 +- .../riscv/rvv/autovec/ternop/ternop_nofm-4.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-5.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-6.c | 3 +- .../riscv/rvv/autovec/ternop/ternop_nofm-7.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-8.c | 6 +- .../riscv/rvv/autovec/ternop/ternop_nofm-9.c | 3 +- .../gcc.target/riscv/rvv/autovec/vls/avg-1.c | 44 + .../gcc.target/riscv/rvv/autovec/vls/avg-2.c | 42 + .../gcc.target/riscv/rvv/autovec/vls/avg-3.c | 40 + .../gcc.target/riscv/rvv/autovec/vls/avg-4.c | 45 + .../gcc.target/riscv/rvv/autovec/vls/avg-5.c | 43 + .../gcc.target/riscv/rvv/autovec/vls/avg-6.c | 41 + .../gcc.target/riscv/rvv/autovec/vls/convert-1.c | 74 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-10.c | 80 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-11.c | 54 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-12.c | 36 + .../gcc.target/riscv/rvv/autovec/vls/convert-2.c | 74 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-3.c | 58 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-4.c | 36 + .../gcc.target/riscv/rvv/autovec/vls/convert-5.c | 80 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-6.c | 55 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-7.c | 37 + .../gcc.target/riscv/rvv/autovec/vls/convert-8.c | 58 ++ .../gcc.target/riscv/rvv/autovec/vls/convert-9.c | 22 + .../gcc.target/riscv/rvv/autovec/vls/def.h | 81 +- .../gcc.target/riscv/rvv/autovec/vls/div-1.c | 2 +- .../gcc.target/riscv/rvv/autovec/vls/ext-1.c | 72 ++ .../gcc.target/riscv/rvv/autovec/vls/ext-2.c | 54 ++ .../gcc.target/riscv/rvv/autovec/vls/ext-3.c | 36 + .../gcc.target/riscv/rvv/autovec/vls/ext-4.c | 35 + .../gcc.target/riscv/rvv/autovec/vls/ext-5.c | 27 + .../gcc.target/riscv/rvv/autovec/vls/fma-1.c | 45 + .../gcc.target/riscv/rvv/autovec/vls/fma-2.c | 43 + .../gcc.target/riscv/rvv/autovec/vls/fma-3.c | 41 + .../gcc.target/riscv/rvv/autovec/vls/fma-4.c | 39 + .../gcc.target/riscv/rvv/autovec/vls/fma-5.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/fma-6.c | 30 + .../gcc.target/riscv/rvv/autovec/vls/fma-7.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/fms-1.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/fms-2.c | 30 + .../gcc.target/riscv/rvv/autovec/vls/fms-3.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/fnma-1.c | 45 + .../gcc.target/riscv/rvv/autovec/vls/fnma-2.c | 43 + .../gcc.target/riscv/rvv/autovec/vls/fnma-3.c | 41 + .../gcc.target/riscv/rvv/autovec/vls/fnma-4.c | 39 + .../gcc.target/riscv/rvv/autovec/vls/fnma-5.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/fnma-6.c | 30 + .../gcc.target/riscv/rvv/autovec/vls/fnma-7.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/fnms-1.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/fnms-2.c | 30 + .../gcc.target/riscv/rvv/autovec/vls/fnms-3.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/neg-2.c | 52 ++ .../gcc.target/riscv/rvv/autovec/vls/shift-3.c | 2 +- .../gcc.target/riscv/rvv/autovec/vls/trunc-1.c | 71 ++ .../gcc.target/riscv/rvv/autovec/vls/trunc-2.c | 53 ++ .../gcc.target/riscv/rvv/autovec/vls/trunc-3.c | 35 + .../gcc.target/riscv/rvv/autovec/vls/trunc-4.c | 35 + .../gcc.target/riscv/rvv/autovec/vls/trunc-5.c | 27 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-1.c | 35 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-10.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-11.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-12.c | 21 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-13.c | 20 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-14.c | 19 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-15.c | 18 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-16.c | 21 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-17.c | 20 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-18.c | 19 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-19.c | 18 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-2.c | 33 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-20.c | 20 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-21.c | 19 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-22.c | 18 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-3.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-4.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-5.c | 35 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-6.c | 33 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-7.c | 31 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-8.c | 29 + .../gcc.target/riscv/rvv/autovec/vls/vec-set-9.c | 33 + .../gcc.target/riscv/rvv/autovec/widen/widen-1.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-10.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-11.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-12.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-2.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-3.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-4.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-5.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-6.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-7.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-8.c | 2 +- .../gcc.target/riscv/rvv/autovec/widen/widen-9.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-1.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-2.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-3.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-4.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-5.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-6.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-7.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-8.c | 2 +- .../riscv/rvv/autovec/widen/widen-complicate-9.c | 2 +- .../gcc.target/riscv/rvv/autovec/zve32f-1.c | 2 +- gcc/testsuite/gcc.target/riscv/rvv/base/pr111450.c | 100 +++ .../riscv/rvv/base/scalar-move-merged-run-1.c | 29 + .../gcc.target/riscv/rvv/base/simplify-vdiv.c | 18 + gcc/testsuite/gfortran.dg/bounds_check_fail_7.f90 | 20 + gcc/testsuite/gm2/extensions/pass/libc.def | 1 + gcc/testsuite/gm2/pim/intrinsic/run/pass/cstub.c | 24 + gcc/testsuite/gm2/pim/intrinsic/run/pass/cstub.def | 7 + .../intrinsic/run/pass/pim-intrinsic-run-pass.exp | 48 + gcc/testsuite/gm2/pim/intrinsic/run/pass/test.mod | 102 +++ gcc/testsuite/gm2/pim/run/pass/builtins.mod | 79 ++ gcc/testsuite/gm2/pim/run/pass/convert1.mod | 49 ++ gcc/testsuite/gm2/pim/run/pass/longint1.mod | 49 ++ gcc/testsuite/gm2/pim/run/pass/longint2.mod | 51 ++ gcc/testsuite/gm2/pim/run/pass/longint3.mod | 23 + gcc/testsuite/gm2/pim/run/pass/longint4.mod | 21 + gcc/testsuite/gm2/pim/run/pass/longint5.mod | 24 + gcc/testsuite/gm2/pim/run/pass/longint6.mod | 25 + gcc/testsuite/gm2/pim/run/pass/longint7.mod | 25 + gcc/testsuite/gm2/pim/run/pass/longint8.mod | 25 + .../gm2/pimlib/logitech/run/pass/realconv.mod | 1 + ...tches-uninit-variable-checking-cascade-fail.exp | 5 + gcc/testsuite/gnat.dg/sync_tag_discriminals.adb | 51 ++ gcc/testsuite/gnat.dg/sync_tag_finalize.adb | 60 ++ gcc/testsuite/gnat.dg/sync_tag_limited.adb | 50 ++ gcc/testsuite/lib/gm2.exp | 7 + gcc/testsuite/lib/modules.exp | 100 +++ gcc/tree-pretty-print.cc | 26 +- gcc/tree-pretty-print.h | 2 +- gcc/tree-ssa-sccvn.cc | 5 +- gcc/tree-ssa-threadupdate.cc | 13 + gcc/tree-streamer.h | 5 +- gcc/tree-vrp.cc | 203 ++++- gcc/tree.cc | 4 +- gcc/ubsan.cc | 38 +- gcc/value-range.h | 28 +- libcpp/ChangeLog | 21 + libcpp/files.cc | 11 +- libcpp/include/cpplib.h | 12 +- libcpp/include/mkdeps.h | 9 +- libcpp/init.cc | 13 +- libcpp/mkdeps.cc | 163 +++- libgcc/ChangeLog | 5 + libgcc/config/aarch64/aarch64-unwind.h | 5 +- libgm2/ChangeLog | 32 + libgm2/Makefile.am | 4 + libgm2/Makefile.in | 3 + libgm2/libm2cor/Makefile.am | 17 +- libgm2/libm2cor/Makefile.in | 18 +- libgm2/libm2iso/Makefile.am | 20 +- libgm2/libm2iso/Makefile.in | 21 +- libgm2/libm2log/Makefile.am | 8 +- libgm2/libm2log/Makefile.in | 8 +- libgm2/libm2min/Makefile.am | 10 +- libgm2/libm2min/Makefile.in | 10 +- libgm2/libm2pim/Makefile.am | 16 +- libgm2/libm2pim/Makefile.in | 17 +- libgomp/ChangeLog | 26 + libgomp/env.c | 251 +++--- libgomp/libgomp.texi | 7 +- libgomp/testsuite/libgomp.c/allocate-4.c | 84 ++ libgomp/testsuite/libgomp.c/allocate-5.c | 126 +++ libgomp/testsuite/libgomp.c/allocate-6.c | 319 +++++++ libstdc++-v3/ChangeLog | 43 + libstdc++-v3/testsuite/20_util/allocator/105975.cc | 2 +- .../random/discard_block_engine/cons/seed_seq2.cc | 2 +- .../independent_bits_engine/cons/seed_seq2.cc | 2 +- .../linear_congruential_engine/cons/seed_seq2.cc | 2 +- .../mersenne_twister_engine/cons/seed_seq2.cc | 2 +- .../random/shuffle_order_engine/cons/seed_seq2.cc | 2 +- .../subtract_with_carry_engine/cons/seed_seq2.cc | 2 +- .../cons/seed_seq2.cc | 2 +- 470 files changed, 13923 insertions(+), 2853 deletions(-)