From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1851) id 374F83858437; Thu, 21 Oct 2021 09:51:58 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 374F83858437 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Martin Liska To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc/devel/sphinx] Merge branch 'master' into devel/sphinx X-Act-Checkin: gcc X-Git-Author: Martin Liska X-Git-Refname: refs/heads/devel/sphinx X-Git-Oldrev: 39887dd2c2c81cf3e98466827d59cafda279a258 X-Git-Newrev: 9345234b2a80fbb26342f8c72aa8714d673c7dad Message-Id: <20211021095158.374F83858437@sourceware.org> Date: Thu, 21 Oct 2021 09:51:58 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Oct 2021 09:51:58 -0000 https://gcc.gnu.org/g:9345234b2a80fbb26342f8c72aa8714d673c7dad commit 9345234b2a80fbb26342f8c72aa8714d673c7dad Merge: 39887dd2c2c 7878981f1d4 Author: Martin Liska Date: Thu Oct 21 11:51:37 2021 +0200 Merge branch 'master' into devel/sphinx Diff: ChangeLog | 4 + MAINTAINERS | 1 + contrib/ChangeLog | 10 + contrib/gcc-changelog/git_commit.py | 1 + gcc/ChangeLog | 507 ++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 249 + gcc/ada/Makefile.rtl | 6 - gcc/ada/atree.ads | 45 +- gcc/ada/checks.adb | 19 +- gcc/ada/cstand.adb | 6 +- .../building_executable_programs_with_gnat.rst | 19 + gcc/ada/einfo-utils.adb | 72 +- gcc/ada/einfo-utils.ads | 96 +- gcc/ada/einfo.ads | 5 +- gcc/ada/exp_aggr.adb | 9 +- gcc/ada/exp_attr.adb | 5 +- gcc/ada/exp_ch3.adb | 11 +- gcc/ada/exp_ch7.adb | 35 +- gcc/ada/exp_disp.ads | 6 +- gcc/ada/exp_intr.adb | 5 +- gcc/ada/exp_spark.adb | 1 + gcc/ada/exp_strm.adb | 4 +- gcc/ada/exp_unst.adb | 5 +- gcc/ada/exp_util.adb | 3 +- gcc/ada/freeze.adb | 38 +- gcc/ada/gcc-interface/decl.c | 22 +- gcc/ada/gcc-interface/trans.c | 2 +- gcc/ada/gen_il-gen-gen_entities.adb | 38 +- gcc/ada/gen_il-gen-gen_nodes.adb | 6 +- gcc/ada/gen_il-gen.adb | 7 + gcc/ada/gen_il-internals.adb | 2 +- gcc/ada/gen_il-internals.ads | 7 +- gcc/ada/gen_il-types.ads | 2 + gcc/ada/gnat_ugn.texi | 30 +- .../{g-io-put__vxworks.adb => a-nbnbin__ghost.adb} | 59 +- gcc/ada/libgnat/a-nbnbin__ghost.ads | 202 + gcc/ada/libgnat/s-aoinar.adb | 74 +- gcc/ada/libgnat/s-aomoar.adb | 80 +- gcc/ada/libgnat/s-atopex.adb | 83 +- gcc/ada/libgnat/s-atopri.adb | 161 +- gcc/ada/libgnat/s-atopri.ads | 145 +- gcc/ada/libgnat/s-parame__ae653.ads | 196 - gcc/ada/libgnat/s-thread.ads | 92 - gcc/ada/libgnat/s-thread__ae653.adb | 163 - gcc/ada/libgnat/s-widlllu.ads | 5 +- gcc/ada/libgnat/s-widllu.ads | 5 +- gcc/ada/libgnat/s-widthu.adb | 107 + gcc/ada/libgnat/s-widuns.ads | 5 +- gcc/ada/libgnat/system-vxworks-ppc-ravenscar.ads | 185 - gcc/ada/libgnat/system-vxworks-ppc.ads | 163 - gcc/ada/libgnat/system-vxworks-x86.ads | 164 - gcc/ada/repinfo.adb | 72 +- gcc/ada/sem.adb | 14 +- gcc/ada/sem_aggr.adb | 23 +- gcc/ada/sem_attr.adb | 8 +- gcc/ada/sem_ch12.adb | 14 +- gcc/ada/sem_ch13.adb | 6 +- gcc/ada/sem_ch3.adb | 234 +- gcc/ada/sem_ch4.adb | 72 +- gcc/ada/sem_ch6.adb | 170 +- gcc/ada/sem_ch8.adb | 16 +- gcc/ada/sem_eval.adb | 100 +- gcc/ada/sem_eval.ads | 15 +- gcc/ada/sem_prag.adb | 74 +- gcc/ada/sem_util.adb | 13 +- gcc/ada/sinfo-utils.adb | 29 +- gcc/ada/sprint.adb | 7 +- gcc/ada/treepr.adb | 15 +- gcc/ada/types.h | 8 +- gcc/ada/uintp.adb | 18 +- gcc/ada/usage.adb | 2 + gcc/ada/vxworks7-cert-rtp-link.spec | 1 + gcc/ada/warnsw.adb | 11 + gcc/ada/warnsw.ads | 8 + gcc/c-family/c-omp.c | 43 +- gcc/calls.c | 11 - gcc/cfgexpand.c | 2 +- gcc/config.gcc | 1 + gcc/config/aarch64/aarch64-builtins.c | 103 +- gcc/config/aarch64/aarch64-protos.h | 3 +- gcc/config/aarch64/aarch64-simd-builtins.def | 2 +- gcc/config/aarch64/aarch64-simd.md | 140 +- gcc/config/aarch64/aarch64.c | 13 +- gcc/config/aarch64/aarch64.md | 2 +- gcc/config/aarch64/arm_fp16.h | 2 +- gcc/config/aarch64/arm_neon.h | 14 +- gcc/config/aarch64/constraints.md | 8 + gcc/config/aarch64/iterators.md | 5 +- gcc/config/aarch64/predicates.md | 6 + gcc/config/arm/arm.c | 46 +- gcc/config/bfin/bfin.md | 46 +- gcc/config/darwin.c | 34 +- gcc/config/i386/avx512fp16intrin.h | 13 + gcc/config/i386/avx512fp16vlintrin.h | 26 + gcc/config/i386/i386.c | 32 +- gcc/config/i386/winnt.c | 12 +- gcc/config/ia64/ia64.c | 64 +- gcc/config/rs6000/altivec.md | 203 +- gcc/config/rs6000/emmintrin.h | 12 +- gcc/config/rs6000/pmmintrin.h | 4 + gcc/config/rs6000/rs6000-call.c | 33 +- gcc/config/rs6000/rs6000-p8swap.c | 2 - gcc/config/rs6000/rs6000.c | 85 +- gcc/config/rs6000/smmintrin.h | 4 + gcc/config/rs6000/tmmintrin.h | 12 + gcc/config/rs6000/vsx.md | 26 +- gcc/config/s390/s390.c | 46 +- gcc/cp/ChangeLog | 24 + gcc/cp/constexpr.c | 4 + gcc/cp/decl.c | 3 +- gcc/cp/name-lookup.c | 4 +- gcc/cp/parser.c | 14 +- gcc/doc/extend.texi | 12 +- gcc/doc/install.texi | 6 - gcc/doc/invoke.texi | 17 +- gcc/doc/sourcebuild.texi | 32 + gcc/doc/tm.texi | 45 - gcc/doc/tm.texi.in | 8 - gcc/fortran/ChangeLog | 101 + gcc/fortran/decl.c | 1 + gcc/fortran/expr.c | 3 +- gcc/fortran/openmp.c | 25 +- gcc/fortran/parse.c | 69 +- gcc/fortran/parse.h | 2 +- gcc/fortran/trans-array.c | 20 +- gcc/fortran/trans-expr.c | 2 +- gcc/fortran/trans-intrinsic.c | 246 +- gcc/fortran/trans-openmp.c | 15 +- gcc/fortran/trans-types.c | 6 +- gcc/gimple-range.cc | 10 +- gcc/match.pd | 13 + gcc/omp-low.c | 15 +- gcc/params.opt | 4 + gcc/passes.def | 4 +- gcc/target.def | 45 - gcc/targhooks.c | 30 - gcc/targhooks.h | 4 - gcc/testsuite/ChangeLog | 338 + .../c-c++-common/Wstringop-overflow-2-novec.c | 126 + gcc/testsuite/c-c++-common/Wstringop-overflow-2.c | 20 +- gcc/testsuite/c-c++-common/ubsan/pr64888.c | 27 + gcc/testsuite/g++.dg/cpp2a/constexpr-virtual19.C | 11 + gcc/testsuite/g++.dg/pr102796.C | 18 + gcc/testsuite/g++.dg/template/crash90.C | 3 +- gcc/testsuite/g++.dg/tls/pr102642.C | 10 + gcc/testsuite/gcc.dg/Warray-bounds-48-novec.c | 364 + gcc/testsuite/gcc.dg/Warray-bounds-48.c | 4 +- gcc/testsuite/gcc.dg/Warray-bounds-51-novec.c | 21 + gcc/testsuite/gcc.dg/Warray-bounds-51.c | 2 +- gcc/testsuite/gcc.dg/Warray-bounds-87.c | 2 +- gcc/testsuite/gcc.dg/Warray-parameter-3-novec.c | 16 + gcc/testsuite/gcc.dg/Warray-parameter-3.c | 2 +- gcc/testsuite/gcc.dg/Wstringop-overflow-14-novec.c | 16 + gcc/testsuite/gcc.dg/Wstringop-overflow-14.c | 4 +- gcc/testsuite/gcc.dg/Wstringop-overflow-21-novec.c | 34 + gcc/testsuite/gcc.dg/Wstringop-overflow-21.c | 8 +- gcc/testsuite/gcc.dg/Wstringop-overflow-68.c | 17 +- gcc/testsuite/gcc.dg/Wstringop-overflow-76-novec.c | 88 + gcc/testsuite/gcc.dg/Wstringop-overflow-76.c | 18 +- .../gcc.dg/Wzero-length-array-bounds-2-novec.c | 45 + gcc/testsuite/gcc.dg/Wzero-length-array-bounds-2.c | 2 +- gcc/testsuite/gcc.dg/analyzer/pr94851-2.c | 2 +- gcc/testsuite/gcc.dg/graphite/pr69728.c | 4 +- gcc/testsuite/gcc.dg/graphite/scop-dsyr2k.c | 2 +- gcc/testsuite/gcc.dg/graphite/scop-dsyrk.c | 2 +- gcc/testsuite/gcc.dg/loop-8.c | 19 +- gcc/testsuite/gcc.dg/plugin/gil-1.c | 1 + gcc/testsuite/gcc.dg/pr102764.c | 14 + gcc/testsuite/gcc.dg/pr102827.c | 13 + gcc/testsuite/gcc.dg/pr36902.c | 5 +- gcc/testsuite/gcc.dg/shrink-wrap-loop.c | 54 +- gcc/testsuite/gcc.dg/tree-ssa/ifc-20040816-1.c | 2 +- gcc/testsuite/gcc.dg/tree-ssa/pr21559.c | 7 +- gcc/testsuite/gcc.dg/tree-ssa/pr59597.c | 10 +- gcc/testsuite/gcc.dg/tree-ssa/pr71437.c | 8 +- gcc/testsuite/gcc.dg/tree-ssa/pr77445-2.c | 3 +- gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-18.c | 27 - gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-2a.c | 21 - gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-4.c | 14 +- gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-6.c | 44 - gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-7.c | 5 +- gcc/testsuite/gcc.dg/tree-ssa/ssa-thread-invalid.c | 102 + gcc/testsuite/gcc.dg/vect/bb-slp-16.c | 5 +- .../gcc.target/aarch64/fmla_intrinsic_1.c | 9 +- .../gcc.target/aarch64/fmls_intrinsic_1.c | 9 +- .../gcc.target/aarch64/fmul_intrinsic_1.c | 11 +- gcc/testsuite/gcc.target/aarch64/frint.x | 12 + gcc/testsuite/gcc.target/aarch64/frint_double.c | 1 + gcc/testsuite/gcc.target/aarch64/frint_float.c | 1 + gcc/testsuite/gcc.target/aarch64/merge_trunc1.c | 41 + gcc/testsuite/gcc.target/aarch64/mla_intrinsic_1.c | 1 + gcc/testsuite/gcc.target/aarch64/mls_intrinsic_1.c | 1 + gcc/testsuite/gcc.target/aarch64/mul_intrinsic_1.c | 1 + gcc/testsuite/gcc.target/aarch64/mvn-cmeq0-1.c | 17 + .../gcc.target/aarch64/narrow_high_combine.c | 3 +- gcc/testsuite/gcc.target/aarch64/shl-combine-2.c | 14 + gcc/testsuite/gcc.target/aarch64/shl-combine-3.c | 14 + gcc/testsuite/gcc.target/aarch64/shl-combine-4.c | 14 + gcc/testsuite/gcc.target/aarch64/shl-combine-5.c | 14 + gcc/testsuite/gcc.target/aarch64/shrn-combine-1.c | 13 + gcc/testsuite/gcc.target/aarch64/shrn-combine-10.c | 14 + gcc/testsuite/gcc.target/aarch64/shrn-combine-2.c | 13 + gcc/testsuite/gcc.target/aarch64/shrn-combine-3.c | 13 + gcc/testsuite/gcc.target/aarch64/shrn-combine-4.c | 13 + gcc/testsuite/gcc.target/aarch64/shrn-combine-5.c | 16 + gcc/testsuite/gcc.target/aarch64/shrn-combine-6.c | 16 + gcc/testsuite/gcc.target/aarch64/shrn-combine-7.c | 16 + gcc/testsuite/gcc.target/aarch64/shrn-combine-8.c | 14 + gcc/testsuite/gcc.target/aarch64/shrn-combine-9.c | 14 + .../gcc.target/aarch64/simd/vmul_elem_1.c | 44 + gcc/testsuite/gcc.target/aarch64/sve/pr93183.c | 2 +- gcc/testsuite/gcc.target/aarch64/vclz.c | 272 +- gcc/testsuite/gcc.target/aarch64/vneg_s.c | 167 +- gcc/testsuite/gcc.target/aarch64/xtn-combine-1.c | 16 + gcc/testsuite/gcc.target/aarch64/xtn-combine-2.c | 16 + gcc/testsuite/gcc.target/aarch64/xtn-combine-3.c | 16 + gcc/testsuite/gcc.target/aarch64/xtn-combine-4.c | 16 + gcc/testsuite/gcc.target/aarch64/xtn-combine-5.c | 16 + gcc/testsuite/gcc.target/aarch64/xtn-combine-6.c | 16 + gcc/testsuite/gcc.target/i386/387-12.c | 4 +- .../gcc.target/i386/avx512fp16-set1-pch-1a.c | 13 + .../gcc.target/i386/avx512fp16-set1-pch-1b.c | 42 + .../gcc.target/i386/avx512fp16vl-set1-pch-1a.c | 20 + .../gcc.target/i386/avx512fp16vl-set1-pch-1b.c | 57 + gcc/testsuite/gcc.target/i386/pr102761.c | 11 + gcc/testsuite/gcc.target/i386/pr102812.c | 12 + gcc/testsuite/gcc.target/powerpc/builtins-1.c | 8 +- gcc/testsuite/gcc.target/powerpc/p10_vec_xl_sext.c | 35 + gcc/testsuite/gcc.target/powerpc/sse4_2-pcmpgtq.c | 4 +- gcc/testsuite/gfortran.dg/bind-c-char-descr.f90 | 57 +- gcc/testsuite/gfortran.dg/bind-c-contiguous-5.c | 101 + .../gfortran.dg/c-interop/shape-bindc.f90 | 77 + gcc/testsuite/gfortran.dg/c-interop/shape-poly.f90 | 89 + gcc/testsuite/gfortran.dg/c-interop/size-bindc.f90 | 106 + gcc/testsuite/gfortran.dg/c-interop/size-poly.f90 | 118 + .../gfortran.dg/c-interop/ubound-bindc.f90 | 129 + .../gfortran.dg/c-interop/ubound-poly.f90 | 145 + gcc/testsuite/gfortran.dg/gomp/cancel-1.f90 | 3 + .../gfortran.dg/gomp/declare-variant-15.f90 | 13 + .../gfortran.dg/gomp/declare-variant-16.f90 | 14 +- gcc/testsuite/gfortran.dg/gomp/nesting-3.f90 | 20 +- gcc/testsuite/gfortran.dg/gomp/reduction4.f90 | 2 +- .../gomp/strictly-structured-block-1.f90 | 214 + .../gomp/strictly-structured-block-2.f90 | 139 + .../gomp/strictly-structured-block-3.f90 | 52 + gcc/testsuite/lib/target-supports.exp | 182 + gcc/tree-cfg.c | 74 +- gcc/tree-data-ref.c | 3 + gcc/tree-if-conv.c | 21 +- gcc/tree-object-size.c | 112 +- gcc/tree-ssa-threadbackward.c | 31 +- gcc/tree-ssa-threadupdate.c | 38 +- gcc/tree-vect-data-refs.c | 181 +- gcc/tree-vect-slp.c | 1 - gcc/tree-vect-stmts.c | 157 +- gcc/tree-vectorizer.h | 6 +- libcpp/ChangeLog | 4 + libffi/.gitattributes | 4 + libffi/ChangeLog | 85 + libffi/ChangeLog.libffi | 7743 ++++++++++++++++++-- libffi/HOWTO_MERGE | 13 + libffi/LICENSE | 2 +- libffi/LICENSE-BUILDTOOLS | 353 + libffi/LOCAL_PATCHES | 2 + libffi/MERGE | 4 + libffi/Makefile.am | 135 +- libffi/Makefile.in | 219 +- libffi/README | 450 -- libffi/README.md | 495 ++ libffi/acinclude.m4 | 38 +- libffi/autogen.sh | 11 + libffi/configure | 487 +- libffi/configure.ac | 91 +- libffi/configure.host | 97 +- libffi/doc/Makefile.am | 3 + libffi/doc/libffi.texi | 382 +- libffi/doc/version.texi | 8 +- libffi/fficonfig.h.in | 21 +- libffi/generate-darwin-source-and-headers.py | 143 +- libffi/include/Makefile.am | 2 +- libffi/include/Makefile.in | 3 +- libffi/include/ffi.h.in | 213 +- libffi/include/ffi_cfi.h | 21 + libffi/include/ffi_common.h | 50 +- libffi/include/tramp.h | 45 + libffi/libffi.map.in | 24 +- libffi/libffi.pc.in | 2 +- libffi/libffi.xcodeproj/project.pbxproj | 530 +- libffi/libtool-version | 25 +- libffi/man/Makefile.in | 1 + libffi/mdate-sh | 39 +- libffi/merge.sh | 51 + libffi/msvcc.sh | 134 +- libffi/src/aarch64/ffi.c | 536 +- libffi/src/aarch64/ffitarget.h | 35 +- libffi/src/aarch64/internal.h | 33 + libffi/src/aarch64/sysv.S | 189 +- libffi/src/aarch64/win64_armasm.S | 506 ++ libffi/src/alpha/ffi.c | 6 +- libffi/src/arc/ffi.c | 6 +- libffi/src/arm/ffi.c | 380 +- libffi/src/arm/ffitarget.h | 24 +- libffi/src/arm/internal.h | 10 + libffi/src/arm/sysv.S | 304 +- libffi/src/arm/sysv_msvc_arm32.S | 311 + libffi/src/closures.c | 489 +- libffi/src/cris/ffi.c | 4 +- libffi/src/csky/ffi.c | 395 + libffi/src/csky/ffitarget.h | 63 + libffi/src/csky/sysv.S | 371 + libffi/src/dlmalloc.c | 7 +- libffi/src/frv/ffi.c | 4 +- libffi/src/ia64/ffi.c | 30 +- libffi/src/ia64/ffitarget.h | 3 +- libffi/src/ia64/unix.S | 9 +- libffi/src/java_raw_api.c | 6 +- libffi/src/kvx/asm.h | 5 + libffi/src/kvx/ffi.c | 273 + libffi/src/kvx/ffitarget.h | 75 + libffi/src/kvx/sysv.S | 127 + libffi/src/m32r/ffi.c | 2 +- libffi/src/m68k/ffi.c | 4 +- libffi/src/m68k/sysv.S | 29 +- libffi/src/m88k/ffi.c | 8 +- libffi/src/metag/ffi.c | 14 +- libffi/src/microblaze/ffi.c | 10 +- libffi/src/mips/ffi.c | 146 +- libffi/src/mips/ffitarget.h | 23 +- libffi/src/mips/n32.S | 151 +- libffi/src/mips/o32.S | 177 +- libffi/src/moxie/eabi.S | 2 +- libffi/src/moxie/ffi.c | 27 +- libffi/src/nios2/ffi.c | 4 +- libffi/src/pa/ffi.c | 216 +- libffi/src/pa/ffitarget.h | 11 +- libffi/src/pa/hpux32.S | 76 +- libffi/src/pa/linux.S | 160 +- libffi/src/powerpc/asm.h | 4 +- libffi/src/powerpc/darwin_closure.S | 6 +- libffi/src/powerpc/ffi.c | 10 +- libffi/src/powerpc/ffi_darwin.c | 48 +- libffi/src/powerpc/ffi_linux64.c | 247 +- libffi/src/powerpc/ffi_powerpc.h | 25 +- libffi/src/powerpc/ffitarget.h | 14 +- libffi/src/powerpc/linux64.S | 111 +- libffi/src/powerpc/linux64_closure.S | 70 +- libffi/src/powerpc/sysv.S | 12 +- libffi/src/prep_cif.c | 64 +- libffi/src/raw_api.c | 10 +- libffi/src/riscv/ffi.c | 16 +- libffi/src/sparc/ffi.c | 6 +- libffi/src/sparc/ffi64.c | 18 +- libffi/src/tramp.c | 729 ++ libffi/src/types.c | 4 +- libffi/src/vax/ffi.c | 4 +- libffi/src/x86/asmnames.h | 30 + libffi/src/x86/darwin.S | 444 -- libffi/src/x86/darwin64.S | 416 -- libffi/src/x86/darwin64_c.c | 643 -- libffi/src/x86/darwin_c.c | 843 --- libffi/src/x86/ffi.c | 162 +- libffi/src/x86/ffi64.c | 164 +- libffi/src/x86/ffitarget.h | 42 +- libffi/src/x86/ffiw64.c | 114 +- libffi/src/x86/internal.h | 14 + libffi/src/x86/internal64.h | 14 + libffi/src/x86/sysv.S | 215 +- libffi/src/x86/sysv_intel.S | 995 +++ libffi/src/x86/unix64.S | 204 +- libffi/src/x86/win64.S | 170 +- libffi/src/x86/win64_intel.S | 238 + libffi/src/xtensa/ffi.c | 4 +- libffi/src/xtensa/sysv.S | 7 +- libffi/testsuite/Makefile.am | 206 +- libffi/testsuite/Makefile.in | 210 +- libffi/testsuite/lib/libffi.exp | 294 +- libffi/testsuite/libffi.bhaible/Makefile | 28 + libffi/testsuite/libffi.bhaible/README | 78 + libffi/testsuite/libffi.bhaible/alignof.h | 50 + libffi/testsuite/libffi.bhaible/bhaible.exp | 63 + libffi/testsuite/libffi.bhaible/test-call.c | 1745 +++++ libffi/testsuite/libffi.bhaible/test-callback.c | 2885 ++++++++ libffi/testsuite/libffi.bhaible/testcases.c | 747 ++ libffi/testsuite/libffi.call/align_mixed.c | 46 + libffi/testsuite/libffi.call/align_stdcall.c | 46 + libffi/testsuite/libffi.call/call.exp | 28 +- libffi/testsuite/libffi.call/cls_uchar_va.c | 44 - libffi/testsuite/libffi.call/cls_ushort_va.c | 44 - libffi/testsuite/libffi.call/ffitest.h | 13 +- libffi/testsuite/libffi.call/float2.c | 23 +- libffi/testsuite/libffi.call/offsets.c | 46 + libffi/testsuite/libffi.call/struct10.c | 57 + libffi/testsuite/libffi.call/va_1.c | 120 +- libffi/testsuite/libffi.call/va_2.c | 196 + libffi/testsuite/libffi.closures/closure.exp | 67 + .../{libffi.call => libffi.closures}/closure_fn0.c | 0 .../{libffi.call => libffi.closures}/closure_fn1.c | 0 .../{libffi.call => libffi.closures}/closure_fn2.c | 0 .../{libffi.call => libffi.closures}/closure_fn3.c | 0 .../{libffi.call => libffi.closures}/closure_fn4.c | 0 .../{libffi.call => libffi.closures}/closure_fn5.c | 0 .../{libffi.call => libffi.closures}/closure_fn6.c | 0 .../closure_loc_fn0.c | 3 + .../closure_simple.c | 0 .../{libffi.call => libffi.closures}/cls_12byte.c | 0 .../{libffi.call => libffi.closures}/cls_16byte.c | 0 .../{libffi.call => libffi.closures}/cls_18byte.c | 0 .../{libffi.call => libffi.closures}/cls_19byte.c | 0 .../{libffi.call => libffi.closures}/cls_1_1byte.c | 0 .../{libffi.call => libffi.closures}/cls_20byte.c | 2 +- .../{libffi.call => libffi.closures}/cls_20byte1.c | 2 +- .../{libffi.call => libffi.closures}/cls_24byte.c | 6 +- .../{libffi.call => libffi.closures}/cls_2byte.c | 0 .../{libffi.call => libffi.closures}/cls_3_1byte.c | 0 .../{libffi.call => libffi.closures}/cls_3byte1.c | 0 .../{libffi.call => libffi.closures}/cls_3byte2.c | 0 libffi/testsuite/libffi.closures/cls_3float.c | 95 + .../{libffi.call => libffi.closures}/cls_4_1byte.c | 0 .../{libffi.call => libffi.closures}/cls_4byte.c | 0 .../cls_5_1_byte.c | 2 +- .../{libffi.call => libffi.closures}/cls_5byte.c | 2 +- .../{libffi.call => libffi.closures}/cls_64byte.c | 0 .../cls_6_1_byte.c | 2 +- .../{libffi.call => libffi.closures}/cls_6byte.c | 2 +- .../cls_7_1_byte.c | 2 +- .../{libffi.call => libffi.closures}/cls_7byte.c | 2 +- .../{libffi.call => libffi.closures}/cls_8byte.c | 0 .../{libffi.call => libffi.closures}/cls_9byte1.c | 2 +- .../{libffi.call => libffi.closures}/cls_9byte2.c | 2 +- .../cls_align_double.c | 2 +- .../cls_align_float.c | 2 +- .../cls_align_longdouble.c | 2 +- .../cls_align_longdouble_split.c | 2 +- .../cls_align_longdouble_split2.c | 2 +- .../cls_align_pointer.c | 2 +- .../cls_align_sint16.c | 2 +- .../cls_align_sint32.c | 2 +- .../cls_align_sint64.c | 2 +- .../cls_align_uint16.c | 2 +- .../cls_align_uint32.c | 2 +- .../cls_align_uint64.c | 2 +- .../cls_dbls_struct.c | 6 +- .../{libffi.call => libffi.closures}/cls_double.c | 0 .../cls_double_va.c | 0 .../{libffi.call => libffi.closures}/cls_float.c | 0 .../cls_longdouble.c | 0 .../cls_longdouble_va.c | 0 .../cls_many_mixed_args.c | 0 .../cls_many_mixed_float_double.c | 0 .../cls_multi_schar.c | 2 +- .../cls_multi_sshort.c | 2 +- .../cls_multi_sshortchar.c | 2 +- .../cls_multi_uchar.c | 2 +- .../cls_multi_ushort.c | 2 +- .../cls_multi_ushortchar.c | 2 +- .../{libffi.call => libffi.closures}/cls_pointer.c | 0 .../cls_pointer_stack.c | 0 .../{libffi.call => libffi.closures}/cls_schar.c | 0 .../{libffi.call => libffi.closures}/cls_sint.c | 0 .../{libffi.call => libffi.closures}/cls_sshort.c | 0 .../cls_struct_va1.c | 0 .../{libffi.call => libffi.closures}/cls_uchar.c | 0 .../{libffi.call => libffi.closures}/cls_uint.c | 0 .../{libffi.call => libffi.closures}/cls_uint_va.c | 0 .../cls_ulong_va.c | 0 .../cls_ulonglong.c | 0 .../{libffi.call => libffi.closures}/cls_ushort.c | 0 .../{libffi.call => libffi.closures}/err_bad_abi.c | 0 libffi/testsuite/libffi.closures/ffitest.h | 144 + .../{libffi.call => libffi.closures}/huge_struct.c | 4 +- .../nested_struct.c | 2 +- .../nested_struct1.c | 2 +- .../nested_struct10.c | 1 + .../nested_struct11.c | 0 libffi/testsuite/libffi.closures/nested_struct12.c | 86 + .../nested_struct13.c} | 14 +- .../nested_struct2.c | 2 +- .../nested_struct3.c | 2 +- .../nested_struct4.c | 0 .../nested_struct5.c | 0 .../nested_struct6.c | 0 .../nested_struct7.c | 0 .../nested_struct8.c | 0 .../nested_struct9.c | 0 .../{libffi.call => libffi.closures}/problem1.c | 0 .../libffi.closures/single_entry_structs1.c | 86 + .../libffi.closures/single_entry_structs2.c | 102 + .../libffi.closures/single_entry_structs3.c | 101 + .../{libffi.call => libffi.closures}/stret_large.c | 0 .../stret_large2.c | 0 .../stret_medium.c | 2 +- .../stret_medium2.c | 2 +- .../{libffi.call => libffi.closures}/testclosure.c | 2 +- .../unwindtest.cc | 13 +- .../unwindtest_ffi_call.cc | 5 +- libffi/testsuite/libffi.go/static-chain.h | 6 - libffi/testsuite/libffi.special/ffitestcxx.h | 96 - libffi/testsuite/libffi.special/special.exp | 35 - libgfortran/ChangeLog | 14 + libgomp/ChangeLog | 39 + libgomp/config/linux/affinity.c | 2 +- libgomp/libgomp.h | 35 + libgomp/libgomp.texi | 2 +- .../libgomp.fortran/target-in-reduction-1.f90 | 78 + .../libgomp.fortran/target-in-reduction-2.f90 | 30 + .../libgomp.fortran/task-reduction-16.f90 | 1 + .../testsuite/libgomp.graphite/force-parallel-5.c | 2 +- libgomp/work.c | 5 + liboffloadmic/ChangeLog | 5 + .../include/coi/source/COIBuffer_source.h | 2 +- libstdc++-v3/ChangeLog | 108 + libstdc++-v3/doc/Makefile.am | 20 +- libstdc++-v3/doc/Makefile.in | 20 +- libstdc++-v3/include/bits/mofunc_impl.h | 2 +- libstdc++-v3/include/bits/ranges_base.h | 24 +- libstdc++-v3/include/bits/ranges_util.h | 15 +- libstdc++-v3/include/bits/stl_iterator.h | 6 +- libstdc++-v3/include/bits/stl_stack.h | 2 +- libstdc++-v3/include/std/optional | 182 +- libstdc++-v3/include/std/ranges | 142 +- libstdc++-v3/include/std/variant | 4 +- libstdc++-v3/include/std/version | 3 + libstdc++-v3/src/c++11/random.cc | 70 +- .../testsuite/20_util/move_only_function/cons.cc | 27 + .../testsuite/20_util/optional/monadic/and_then.cc | 132 + .../testsuite/20_util/optional/monadic/or_else.cc | 103 + .../20_util/optional/monadic/or_else_neg.cc | 30 + .../20_util/optional/monadic/transform.cc | 152 + .../testsuite/20_util/optional/monadic/version.cc | 10 + .../testsuite/23_containers/stack/deduction.cc | 14 + .../26_numerics/random/random_device/entropy.cc | 37 + libstdc++-v3/testsuite/std/ranges/adaptors/all.cc | 15 + .../testsuite/std/ranges/adaptors/sizeof.cc | 6 +- .../testsuite/std/ranges/iota/iota_view.cc | 21 + libstdc++-v3/testsuite/std/ranges/subrange/1.cc | 19 + libstdc++-v3/testsuite/std/ranges/view.cc | 28 +- 537 files changed, 33530 insertions(+), 9769 deletions(-) diff --cc gcc/doc/tm.texi index 9649695993b,990152f5b15..fa66a09ab3f --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@@ -5722,47 -5423,7 +5716,8 @@@ defined, then define this hook to retur @code{TARGET_SETUP_INCOMING_VARARGS} is used, @code{false} otherwise. Otherwise, you should not define this hook. @end deftypefn +@c hook-end - @deftypefn {Target Hook} rtx TARGET_LOAD_BOUNDS_FOR_ARG (rtx @var{slot}, rtx @var{arg}, rtx @var{slot_no}) - @c hook-start:TARGET_LOAD_BOUNDS_FOR_ARG - This hook is used by expand pass to emit insn to load bounds of - @var{arg} passed in @var{slot}. Expand pass uses this hook in case - bounds of @var{arg} are not passed in register. If @var{slot} is a - memory, then bounds are loaded as for regular pointer loaded from - memory. If @var{slot} is not a memory then @var{slot_no} is an integer - constant holding number of the target dependent special slot which - should be used to obtain bounds. Hook returns RTX holding loaded bounds. - @end deftypefn - @c hook-end - - @deftypefn {Target Hook} void TARGET_STORE_BOUNDS_FOR_ARG (rtx @var{arg}, rtx @var{slot}, rtx @var{bounds}, rtx @var{slot_no}) - @c hook-start:TARGET_STORE_BOUNDS_FOR_ARG - This hook is used by expand pass to emit insns to store @var{bounds} of - @var{arg} passed in @var{slot}. Expand pass uses this hook in case - @var{bounds} of @var{arg} are not passed in register. If @var{slot} is a - memory, then @var{bounds} are stored as for regular pointer stored in - memory. If @var{slot} is not a memory then @var{slot_no} is an integer - constant holding number of the target dependent special slot which - should be used to store @var{bounds}. - @end deftypefn - @c hook-end - - @deftypefn {Target Hook} rtx TARGET_LOAD_RETURNED_BOUNDS (rtx @var{slot}) - @c hook-start:TARGET_LOAD_RETURNED_BOUNDS - This hook is used by expand pass to emit insn to load bounds - returned by function call in @var{slot}. Hook returns RTX holding - loaded bounds. - @end deftypefn - @c hook-end - - @deftypefn {Target Hook} void TARGET_STORE_RETURNED_BOUNDS (rtx @var{slot}, rtx @var{bounds}) - @c hook-start:TARGET_STORE_RETURNED_BOUNDS - This hook is used by expand pass to emit insn to store @var{bounds} - returned by function call into @var{slot}. - @end deftypefn - @c hook-end - @node Trampolines @section Support for Nested Functions @cindex support for nested functions