https://gcc.gnu.org/g:17d389c4a3f9fd540cb9cce670b9165ea59ff2ab
commit 17d389c4a3f9fd540cb9cce670b9165ea59ff2ab Merge: 31fed215c247 d0f8cb17bbd3 Author: Thomas Schwinge <tschwi...@baylibre.com> Date: Wed Apr 10 11:05:29 2024 +0200 Merge commit '8534cc772def8142379c0e72ab6392d40f3f60f6^' into HEAD Diff: gcc/ChangeLog | 265 + gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 29 + gcc/analyzer/analyzer.h | 3 + gcc/analyzer/ranges.cc | 18 + gcc/analyzer/region-model-manager.cc | 38 +- gcc/analyzer/region-model.cc | 17 +- gcc/analyzer/region.cc | 48 - gcc/analyzer/region.h | 20 +- gcc/analyzer/varargs.cc | 38 +- gcc/cfgexpand.cc | 2 +- gcc/cfgrtl.cc | 51 +- gcc/cfgrtl.h | 1 + gcc/common/config/riscv/riscv-common.cc | 46 + gcc/config/aarch64/aarch64-arches.def | 2 +- gcc/config/aarch64/aarch64-builtins.cc | 3 +- gcc/config/aarch64/aarch64-passes.def | 1 + gcc/config/aarch64/aarch64-protos.h | 1 + gcc/config/aarch64/aarch64-sme.md | 48 +- gcc/config/aarch64/aarch64-speculation.cc | 64 +- gcc/config/aarch64/aarch64.cc | 64 +- gcc/config/aarch64/aarch64.md | 8 +- gcc/config/arm/arm.cc | 11 +- gcc/config/avr/avr-c.cc | 1 + gcc/config/avr/avr-protos.h | 1 + gcc/config/avr/avr.cc | 70 +- gcc/config/avr/avr.h | 1 + gcc/config/avr/avr.md | 47 +- gcc/config/avr/builtins.def | 16 +- gcc/config/bpf/bpf.md | 2 +- gcc/config/bpf/bpf.opt | 2 + gcc/config/gcn/gcn-valu.md | 5 +- gcc/config/gcn/gcn.cc | 23 +- gcc/config/gcn/gcn.h | 6 + gcc/config/i386/i386.cc | 24 +- gcc/config/loongarch/larchintrin.h | 71 +- gcc/config/nvptx/gen-omp-device-properties.sh | 2 +- gcc/config/nvptx/nvptx.cc | 3 +- gcc/config/riscv/riscv-c.cc | 2 +- gcc/config/riscv/riscv-protos.h | 7 + gcc/config/riscv/riscv-vsetvl.cc | 25 + gcc/config/riscv/riscv.h | 7 +- gcc/config/riscv/riscv.md | 2 +- gcc/config/riscv/riscv.opt | 12 + gcc/cp/ChangeLog | 39 + gcc/cp/constraint.cc | 5 +- gcc/cp/module.cc | 4 + gcc/cp/parser.cc | 9 +- gcc/cp/search.cc | 22 +- gcc/cp/typeck.cc | 24 +- gcc/d/ChangeLog | 38 + gcc/d/Make-lang.in | 1 + gcc/d/d-attribs.cc | 6 +- gcc/d/d-builtins.cc | 39 +- gcc/d/d-codegen.cc | 16 +- gcc/d/d-convert.cc | 6 +- gcc/d/d-lang.cc | 26 +- gcc/d/d-target.cc | 12 +- gcc/d/decl.cc | 39 +- gcc/d/dmd/MERGE | 2 +- gcc/d/dmd/VERSION | 2 +- gcc/d/dmd/aggregate.h | 7 +- gcc/d/dmd/cparse.d | 17 + gcc/d/dmd/cppmangle.d | 6 +- gcc/d/dmd/cxxfrontend.d | 623 + gcc/d/dmd/declaration.h | 7 +- gcc/d/dmd/dinterpret.d | 4 +- gcc/d/dmd/dmangle.d | 10 +- gcc/d/dmd/dmodule.d | 4 +- gcc/d/dmd/doc.d | 2 +- gcc/d/dmd/doc.h | 7 +- gcc/d/dmd/dscope.d | 1 + gcc/d/dmd/dstruct.d | 2 +- gcc/d/dmd/dsymbol.d | 273 +- gcc/d/dmd/dsymbol.h | 35 +- gcc/d/dmd/dsymbolsem.d | 19 +- gcc/d/dmd/dtemplate.d | 16 +- gcc/d/dmd/dtoh.d | 2 +- gcc/d/dmd/expression.d | 2 +- gcc/d/dmd/expression.h | 23 +- gcc/d/dmd/expressionsem.d | 54 +- gcc/d/dmd/funcsem.d | 2 - gcc/d/dmd/gluelayer.d | 20 +- gcc/d/dmd/hdrgen.d | 14 +- gcc/d/dmd/hdrgen.h | 19 +- gcc/d/dmd/iasm.d | 32 +- gcc/d/dmd/iasmgcc.d | 23 +- gcc/d/dmd/importc.d | 273 + gcc/d/dmd/init.h | 7 +- gcc/d/dmd/initsem.d | 4 +- gcc/d/dmd/json.d | 4 +- gcc/d/dmd/json.h | 7 +- gcc/d/dmd/mangle.h | 29 +- gcc/d/dmd/module.h | 7 +- gcc/d/dmd/mtype.d | 110 +- gcc/d/dmd/mtype.h | 63 +- gcc/d/dmd/optimize.d | 2 +- gcc/d/dmd/parse.d | 3 + gcc/d/dmd/parsetimevisitor.d | 1 + gcc/d/dmd/semantic2.d | 4 +- gcc/d/dmd/semantic3.d | 4 +- gcc/d/dmd/statement.h | 15 +- gcc/d/dmd/statementsem.d | 4 +- gcc/d/dmd/target.d | 4 +- gcc/d/dmd/template.h | 25 +- gcc/d/dmd/templateparamsem.d | 2 +- gcc/d/dmd/typesem.d | 162 +- gcc/d/dmd/typinf.d | 6 +- gcc/d/dmd/typinf.h | 9 +- gcc/d/dmd/visitor.h | 2 + gcc/d/expr.cc | 22 +- gcc/d/intrinsics.cc | 4 +- gcc/d/modules.cc | 8 +- gcc/d/runtime.cc | 12 +- gcc/d/typeinfo.cc | 26 +- gcc/d/types.cc | 4 +- gcc/doc/extend.texi | 105 +- gcc/doc/invoke.texi | 63 +- gcc/doc/sourcebuild.texi | 11 + gcc/fortran/ChangeLog | 44 + gcc/fortran/dump-parse-tree.cc | 2 + gcc/fortran/f95-lang.cc | 2 + gcc/fortran/gfortran.h | 3 +- gcc/fortran/openmp.cc | 50 +- gcc/fortran/trans-array.cc | 2 +- gcc/fortran/trans-decl.cc | 4 + gcc/fortran/trans-expr.cc | 26 +- gcc/gdbhooks.py | 2 +- gcc/m2/ChangeLog | 127 + gcc/m2/gm2-compiler/M2ALU.mod | 6 +- gcc/m2/gm2-compiler/M2Const.mod | 2 +- gcc/m2/gm2-compiler/M2GCCDeclare.mod | 129 +- gcc/m2/gm2-compiler/M2GenGCC.mod | 303 +- gcc/m2/gm2-compiler/M2Quads.def | 3 + gcc/m2/gm2-compiler/M2Quads.mod | 130 +- gcc/m2/gm2-compiler/M2SymInit.mod | 3 + gcc/m2/gm2-compiler/NameKey.mod | 13 +- gcc/m2/gm2-compiler/P2SymBuild.mod | 8 +- gcc/m2/gm2-compiler/SymbolTable.def | 525 +- gcc/m2/gm2-compiler/SymbolTable.mod | 450 +- gcc/match.pd | 4 +- gcc/mode-switching.cc | 15 + gcc/po/ChangeLog | 10 + gcc/po/be.po | 30945 ++++++++++-------- gcc/po/da.po | 32213 ++++++++++-------- gcc/po/de.po | 32129 ++++++++++-------- gcc/po/el.po | 31163 ++++++++++-------- gcc/po/es.po | 32284 ++++++++++-------- gcc/po/fi.po | 31789 ++++++++++-------- gcc/po/fr.po | 32134 ++++++++++-------- gcc/po/gcc.pot | 29035 +++++++++-------- gcc/po/hr.po | 31004 ++++++++++-------- gcc/po/id.po | 32450 ++++++++++-------- gcc/po/ja.po | 31618 ++++++++++-------- gcc/po/nl.po | 31720 ++++++++++-------- gcc/po/ru.po | 32290 ++++++++++-------- gcc/po/sr.po | 32573 +++++++++++-------- gcc/po/sv.po | 32064 ++++++++++-------- gcc/po/tr.po | 32446 ++++++++++-------- gcc/po/uk.po | 32066 ++++++++++-------- gcc/po/vi.po | 31762 ++++++++++-------- gcc/po/zh_CN.po | 32216 ++++++++++-------- gcc/po/zh_TW.po | 31899 ++++++++++-------- gcc/rtl-ssa/blocks.cc | 7 +- gcc/testsuite/ChangeLog | 260 + gcc/testsuite/c-c++-common/analyzer/fileno-1.c | 2 + .../analyzer/flex-with-call-summaries.c | 1 + .../analyzer/flex-without-call-summaries.c | 1 + .../c-c++-common/analyzer/null-deref-pr110520.c | 8 + .../c-c++-common/analyzer/out-of-bounds-pr111266.c | 11 + .../analyzer/overlapping-buffers-pr113998.c | 21 + .../c-c++-common/analyzer/stdarg-pr111289-int.c | 69 + .../c-c++-common/analyzer/stdarg-pr111289-ptr.c | 39 + .../c-c++-common/analyzer/strlen-pr113999.c | 8 + gcc/testsuite/g++.dg/cpp0x/noexcept82.C | 14 + gcc/testsuite/g++.dg/cpp0x/noexcept83.C | 37 + gcc/testsuite/g++.dg/cpp0x/sfinae69.C | 2 +- gcc/testsuite/g++.dg/cpp0x/sfinae70.C | 16 + gcc/testsuite/g++.dg/cpp0x/sfinae71.C | 17 + gcc/testsuite/g++.dg/cpp0x/sfinae72.C | 17 + gcc/testsuite/g++.dg/cpp1y/var-templ86.C | 23 + gcc/testsuite/g++.dg/cpp2a/concepts-friend17.C | 15 + gcc/testsuite/g++.dg/cpp2a/implicit-move4.C | 88 + gcc/testsuite/g++.dg/parse/pr113929.C | 7 + gcc/testsuite/g++.dg/torture/vector-struct-1.C | 19 + gcc/testsuite/g++.target/aarch64/acle/ls64.C | 2 +- gcc/testsuite/g++.target/aarch64/acle/ls64_lto.C | 2 +- gcc/testsuite/gcc.dg/analyzer/strlen-1.c | 52 + .../gcc.dg/analyzer/torture/vector-extract-1.c | 15 + gcc/testsuite/gcc.dg/bitint-86.c | 6 +- gcc/testsuite/gcc.dg/lto/modref-3_0.c | 1 + gcc/testsuite/gcc.dg/lto/modref-4_0.c | 1 + gcc/testsuite/gcc.dg/pr107385.c | 20 + gcc/testsuite/gcc.dg/pr113967.c | 14 + gcc/testsuite/gcc.dg/torture/pr112344.c | 1 + gcc/testsuite/gcc.dg/torture/pr113895-2.c | 13 + gcc/testsuite/gcc.dg/torture/pr113895-3.c | 10 + gcc/testsuite/gcc.dg/torture/pr113895-4.c | 14 + gcc/testsuite/gcc.target/aarch64/acle/ls64_lto.c | 2 +- gcc/testsuite/gcc.target/aarch64/acle/pr110100.c | 2 +- gcc/testsuite/gcc.target/aarch64/acle/pr110132.c | 2 +- gcc/testsuite/gcc.target/aarch64/options_set_28.c | 4 +- .../gcc.target/aarch64/pragma_cpp_predefs_2.c | 4 +- .../gcc.target/aarch64/sme/call_sm_switch_11.c | 209 + .../gcc.target/aarch64/sme/call_sm_switch_5.c | 2 +- .../gcc.target/aarch64/sme/call_sm_switch_5_scp.c | 3 + .../gcc.target/aarch64/sme/locally_streaming_1.c | 2 +- .../aarch64/sme/locally_streaming_1_scp.c | 3 + .../aarch64/sme/locally_streaming_1_ts.c | 3 + .../gcc.target/aarch64/sme/sibcall_6_scp.c | 3 + .../gcc.target/aarch64/sme/sibcall_7_ts.c | 3 + gcc/testsuite/gcc.target/aarch64/sme/sibcall_9.c | 51 + gcc/testsuite/gcc.target/aarch64/sme/za_state_4.c | 2 +- .../gcc.target/aarch64/sme/za_state_4_scp.c | 3 + gcc/testsuite/gcc.target/aarch64/sme/za_state_5.c | 2 +- .../gcc.target/aarch64/sme/za_state_5_scp.c | 3 + gcc/testsuite/gcc.target/aarch64/sme/zt0_state_5.c | 1 + gcc/testsuite/gcc.target/aarch64/vect_ctz_1.c | 2 +- gcc/testsuite/gcc.target/arm/pac-sibcall.c | 14 + gcc/testsuite/gcc.target/arm/rev16_2.c | 2 +- gcc/testsuite/gcc.target/i386/apx-ndd-x32-1.c | 2 +- gcc/testsuite/gcc.target/i386/apx-push2pop2-2.c | 24 + gcc/testsuite/gcc.target/i386/pr113921.c | 20 + gcc/testsuite/gcc.target/powerpc/rlwinm-0.c | 4 +- .../gcc.target/riscv/rvv/vsetvl/pr113696.c | 26 + .../s390/zvector/autovec-double-signaling-eq.c | 2 +- .../s390/zvector/autovec-float-signaling-eq.c | 2 +- gcc/testsuite/gdc.dg/bom_UTF16BE.d | Bin 0 -> 300 bytes gcc/testsuite/gdc.dg/bom_UTF16LE.d | Bin 0 -> 300 bytes gcc/testsuite/gdc.dg/bom_UTF32BE.d | Bin 0 -> 556 bytes gcc/testsuite/gdc.dg/bom_UTF32LE.d | Bin 0 -> 556 bytes gcc/testsuite/gdc.dg/bom_UTF8.d | 11 + gcc/testsuite/gdc.dg/bom_characters.d | Bin 0 -> 780 bytes gcc/testsuite/gdc.dg/bom_error_UTF8.d | 11 + gcc/testsuite/gdc.dg/bom_infer_UTF16BE.d | Bin 0 -> 298 bytes gcc/testsuite/gdc.dg/bom_infer_UTF16LE.d | Bin 0 -> 298 bytes gcc/testsuite/gdc.dg/bom_infer_UTF32BE.d | Bin 0 -> 552 bytes gcc/testsuite/gdc.dg/bom_infer_UTF32LE.d | Bin 0 -> 552 bytes gcc/testsuite/gdc.dg/bom_infer_UTF8.d | 11 + .../gdc.test/compilable/imports/test24390a.d | 2 + .../gdc.test/compilable/imports/test24390b.d | 9 + gcc/testsuite/gdc.test/compilable/interpret3.d | 8 +- gcc/testsuite/gdc.test/compilable/test24390.d | 26 + gcc/testsuite/gdc.test/compilable/traits.d | 4 + .../gdc.test/fail_compilation/imports/issue21685.d | 1 + .../gdc.test/fail_compilation/issue21685_main.d | 11 +- .../gdc.test/fail_compilation/test23786.d | 39 + gcc/testsuite/gdc.test/runnable/link15021.d | 2 +- gcc/testsuite/gdc.test/runnable/mars1.d | 14 + gcc/testsuite/gdc.test/runnable/staticaa.d | 17 + gcc/testsuite/gdc.test/runnable_cxx/test7925.d | 4 +- gcc/testsuite/gfortran.dg/PR105658.f90 | 50 + gcc/testsuite/gfortran.dg/allocatable_length_2.f90 | 107 + gcc/testsuite/gfortran.dg/bind_c_optional-2.f90 | 3 +- .../gfortran.dg/gomp/declare-target-4.f90 | 2 +- .../gfortran.dg/gomp/declare-target-indirect-1.f90 | 62 + .../gfortran.dg/gomp/declare-target-indirect-2.f90 | 25 + gcc/testsuite/gfortran.dg/ieee/modes_1.f90 | 2 +- gcc/testsuite/gfortran.dg/pr105473.f90 | 46 + gcc/testsuite/gfortran.dg/pr107068.f90 | 22 + gcc/testsuite/gfortran.dg/pr113503_1.f90 | 18 + gcc/testsuite/gfortran.dg/pr113503_2.f90 | 12 + .../gm2/extensions/run/pass/callingc2.mod | 7 + .../gm2/extensions/run/pass/callingc3.mod | 13 + .../gm2/extensions/run/pass/callingc4.mod | 10 + .../gm2/extensions/run/pass/callingc5.mod | 10 + .../gm2/extensions/run/pass/callingc6.mod | 10 + .../gm2/extensions/run/pass/callingc7.mod | 10 + .../gm2/extensions/run/pass/callingc8.mod | 10 + .../gm2/extensions/run/pass/fixedarray.mod | 7 + .../gm2/extensions/run/pass/fixedarray2.mod | 7 + gcc/testsuite/gm2/pim/run/pass/constdef.def | 6 + gcc/testsuite/gm2/pim/run/pass/constdef.mod | 3 + gcc/testsuite/gm2/pim/run/pass/pim-run-pass.exp | 6 +- gcc/testsuite/gm2/pim/run/pass/testimportconst.mod | 26 + gcc/testsuite/lib/scanasm.exp | 64 + gcc/testsuite/lib/target-supports.exp | 16 +- gcc/tree-ssa-sccvn.cc | 31 +- gcc/tree-vect-loop.cc | 3 +- libcpp/po/ChangeLog | 18 + libcpp/po/be.po | 773 +- libcpp/po/ca.po | 489 +- libcpp/po/cpplib.pot | 543 +- libcpp/po/da.po | 488 +- libcpp/po/de.po | 496 +- libcpp/po/el.po | 1207 +- libcpp/po/eo.po | 494 +- libcpp/po/es.po | 499 +- libcpp/po/fi.po | 488 +- libcpp/po/fr.po | 497 +- libcpp/po/id.po | 489 +- libcpp/po/ja.po | 481 +- libcpp/po/ka.po | 482 +- libcpp/po/nl.po | 481 +- libcpp/po/pt_BR.po | 485 +- libcpp/po/ro.po | 504 +- libcpp/po/ru.po | 496 +- libcpp/po/sr.po | 496 +- libcpp/po/sv.po | 495 +- libcpp/po/tr.po | 486 +- libcpp/po/uk.po | 499 +- libcpp/po/vi.po | 494 +- libcpp/po/zh_CN.po | 489 +- libcpp/po/zh_TW.po | 494 +- libgcc/ChangeLog | 14 + libgcc/config/aarch64/heap-trampoline.c | 34 +- libgcc/config/i386/gthr-win32-cond.c | 2 +- libgfortran/ChangeLog | 17 + libgfortran/io/list_read.c | 56 +- libgfortran/io/read.c | 11 +- libgomp/ChangeLog | 11 + libgomp/libgomp.texi | 6 +- .../libgomp.fortran/declare-target-indirect-1.f90 | 39 + .../libgomp.fortran/declare-target-indirect-2.f90 | 54 + .../libgomp.fortran/declare-target-indirect-3.f90 | 35 + libiberty/ChangeLog | 13 + libiberty/pex-unix.c | 2 + libphobos/ChangeLog | 5 + libphobos/libdruntime/MERGE | 2 +- libphobos/libdruntime/core/interpolation.d | 22 +- libphobos/libdruntime/core/thread/fiber.d | 21 +- libphobos/libdruntime/core/thread/osthread.d | 4 +- libphobos/libdruntime/core/thread/threadbase.d | 3 + libphobos/src/MERGE | 2 +- libphobos/src/std/algorithm/iteration.d | 4 +- libphobos/src/std/algorithm/mutation.d | 38 +- libphobos/src/std/range/package.d | 118 +- libsanitizer/ChangeLog | 6 + libsanitizer/asan/asan_interceptors.cpp | 17 + libstdc++-v3/ChangeLog | 88 + libstdc++-v3/configure | 35 +- libstdc++-v3/configure.ac | 6 + libstdc++-v3/doc/html/manual/debug_mode_using.html | 9 +- libstdc++-v3/doc/html/manual/test.html | 4 +- libstdc++-v3/doc/xml/manual/debug_mode.xml | 9 +- libstdc++-v3/doc/xml/manual/test.xml | 4 +- libstdc++-v3/include/bits/stl_algobase.h | 18 +- libstdc++-v3/include/debug/safe_iterator.tcc | 18 +- libstdc++-v3/libsupc++/Makefile.am | 8 + libstdc++-v3/libsupc++/Makefile.in | 6 + .../testsuite/26_numerics/random/pr60037-neg.cc | 2 +- 341 files changed, 365586 insertions(+), 291301 deletions(-)