From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1698) id B4005383802E; Thu, 22 Jul 2021 22:36:40 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B4005383802E Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Iain D Sandoe To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc/devel/c++-coroutines] Merge master r12-2476. X-Act-Checkin: gcc X-Git-Author: Iain Sandoe X-Git-Refname: refs/heads/devel/c++-coroutines X-Git-Oldrev: 47760701da7715ae555d4742803a43e51ae42b4e X-Git-Newrev: 3911700e14ae4b2489907674161420f980b71f42 Message-Id: <20210722223640.B4005383802E@sourceware.org> Date: Thu, 22 Jul 2021 22:36:40 +0000 (GMT) X-BeenThere: libstdc++-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libstdc++-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jul 2021 22:36:40 -0000 https://gcc.gnu.org/g:3911700e14ae4b2489907674161420f980b71f42 commit 3911700e14ae4b2489907674161420f980b71f42 Merge: 47760701da7 8ed6cfbbee7 Author: Iain Sandoe Date: Thu Jul 22 19:57:54 2021 +0100 Merge master r12-2476. * Merge master r12-2476-g8ed6cfbbee74. Diff: ChangeLog | 8 + c++tools/ChangeLog | 14 + c++tools/config.h.in | 3 + c++tools/configure | 761 ++------- c++tools/configure.ac | 31 + c++tools/server.cc | 28 + contrib/ChangeLog | 4 + gcc/ChangeLog | 470 +++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 55 + gcc/analyzer/program-point.cc | 11 +- gcc/analyzer/region-model.cc | 18 +- gcc/analyzer/region-model.h | 1 + gcc/analyzer/sm-file.cc | 27 +- gcc/analyzer/state-purge.cc | 106 +- gcc/analyzer/state-purge.h | 4 + gcc/analyzer/store.cc | 14 +- gcc/analyzer/supergraph.cc | 11 +- gcc/analyzer/supergraph.h | 1 + gcc/analyzer/svalue.cc | 39 +- gcc/builtins.c | 103 +- gcc/c-family/ChangeLog | 12 + gcc/c-family/c-common.c | 4 +- gcc/c-family/c-common.h | 2 +- gcc/c-family/c-pragma.h | 1 + gcc/c/ChangeLog | 15 + gcc/c/c-parser.c | 10 +- gcc/c/c-tree.h | 5 +- gcc/c/c-typeck.c | 3 +- gcc/cfgloop.h | 2 +- gcc/cfgloopanal.c | 2 +- gcc/cgraph.h | 2 +- gcc/cgraphclones.c | 2 +- gcc/config.gcc | 3 +- gcc/config/i386/constraints.md | 10 + gcc/config/i386/i386-builtin.def | 8 +- gcc/config/i386/i386-expand.c | 36 +- gcc/config/i386/i386-features.c | 157 +- gcc/config/i386/i386-passes.def | 1 - gcc/config/i386/i386-protos.h | 1 - gcc/config/i386/i386.md | 162 +- gcc/config/i386/sse.md | 14 + gcc/config/rs6000/rs6000-gen-builtins.c | 1793 ++++++++++++++++++++ gcc/coverage.c | 2 + gcc/cp/ChangeLog | 16 + gcc/cp/parser.c | 11 +- gcc/cp/pt.c | 1 + gcc/cp/semantics.c | 4 +- gcc/fortran/ChangeLog | 31 + gcc/fortran/decl.c | 113 +- gcc/fortran/dump-parse-tree.c | 2 + gcc/fortran/gfortran.h | 2 + gcc/fortran/module.c | 7 + gcc/fortran/openmp.c | 30 +- gcc/fortran/target-memory.c | 3 + gcc/fortran/trans-decl.c | 8 + gcc/fortran/trans-expr.c | 18 +- gcc/fortran/trans-openmp.c | 2 + gcc/fortran/trans-types.c | 4 +- gcc/function.c | 10 +- gcc/genautomata.c | 2 +- gcc/genextract.c | 2 +- gcc/genmatch.c | 19 +- gcc/gimple-loop-jam.c | 14 +- gcc/gimple-range-cache.cc | 17 +- gcc/gimple-range-fold.cc | 3 +- gcc/gimple-ssa-store-merging.c | 3 +- gcc/gimple.c | 10 +- gcc/gimple.h | 10 +- gcc/gimplify.c | 23 +- gcc/haifa-sched.c | 8 +- gcc/ipa-cp.c | 22 +- gcc/ipa-fnsummary.c | 8 +- gcc/ipa-inline.c | 2 +- gcc/ipa-predicate.c | 4 +- gcc/ipa-predicate.h | 2 +- gcc/ipa-prop.c | 2 +- gcc/ipa-prop.h | 2 +- gcc/ira-build.c | 2 +- gcc/omp-general.c | 17 + gcc/omp-low.c | 2 + gcc/omp-offload.c | 36 + gcc/read-rtl.c | 2 +- gcc/rtl.h | 4 +- gcc/sched-int.h | 4 +- gcc/simplify-rtx.c | 4 +- gcc/testsuite/ChangeLog | 141 ++ .../c-c++-common/goacc/classify-routine-nohost.c | 41 + .../c-c++-common/goacc/classify-routine.c | 10 +- gcc/testsuite/c-c++-common/goacc/routine-2.c | 4 + .../c-c++-common/goacc/routine-nohost-1.c | 50 + .../c-c++-common/goacc/routine-nohost-2.c | 96 ++ gcc/testsuite/c-c++-common/gomp/pr101535-1.c | 31 + gcc/testsuite/c-c++-common/gomp/pr101535-2.c | 11 + gcc/testsuite/g++.dg/analyzer/pr101522.C | 31 + gcc/testsuite/g++.dg/goacc/template.C | 17 +- gcc/testsuite/g++.dg/gomp/pr101516.C | 8 + gcc/testsuite/g++.dg/ipa/pr82352.C | 2 +- gcc/testsuite/g++.dg/pr101511.C | 22 + gcc/testsuite/gcc.c-torture/compile/pr10153-1.c | 7 + gcc/testsuite/gcc.c-torture/compile/pr10153-2.c | 9 + gcc/testsuite/gcc.dg/Warray-bounds-80.c | 96 ++ gcc/testsuite/gcc.dg/Warray-bounds-81.c | 302 ++++ gcc/testsuite/gcc.dg/Warray-bounds-82.c | 258 +++ gcc/testsuite/gcc.dg/Warray-bounds-83.c | 172 ++ gcc/testsuite/gcc.dg/Warray-bounds-84.c | 65 + gcc/testsuite/gcc.dg/Wstringop-overflow-46.c | 5 +- gcc/testsuite/gcc.dg/analyzer/explode-2.c | 2 +- gcc/testsuite/gcc.dg/analyzer/explode-2a.c | 2 +- gcc/testsuite/gcc.dg/analyzer/phi-2.c | 27 + gcc/testsuite/gcc.dg/analyzer/pr101547.c | 11 + gcc/testsuite/gcc.dg/pr101496.c | 22 + gcc/testsuite/gcc.dg/pr101497.c | 13 + gcc/testsuite/gcc.dg/uninit-pr101300.c | 53 + gcc/testsuite/gcc.dg/uninit-pr65178.c | 21 + gcc/testsuite/gcc.dg/unroll-10.c | 13 + gcc/testsuite/gcc.dg/unroll-9.c | 12 + gcc/testsuite/gcc.target/i386/crc32-6.c | 13 + .../gcc.target/i386/fuse-caller-save-xmm.c | 2 +- gcc/testsuite/gcc.target/i386/mask-shift.c | 83 + .../gcc.target/powerpc/fold-vec-div-longlong.c | 7 +- .../gcc.target/powerpc/fold-vec-mult-longlong.c | 7 +- gcc/testsuite/gcc.target/powerpc/pr101129.c | 1 + gcc/testsuite/gfortran.dg/bind_c_char_10.f90 | 480 ++++++ gcc/testsuite/gfortran.dg/bind_c_char_6.f90 | 262 +++ gcc/testsuite/gfortran.dg/bind_c_char_7.f90 | 261 +++ gcc/testsuite/gfortran.dg/bind_c_char_8.f90 | 249 +++ gcc/testsuite/gfortran.dg/bind_c_char_9.f90 | 188 ++ .../gfortran.dg/goacc/classify-routine-nohost.f95 | 39 + .../gfortran.dg/goacc/classify-routine.f95 | 7 + .../goacc/pure-elemental-procedures-2.f90 | 24 + gcc/testsuite/gfortran.dg/goacc/routine-6.f90 | 10 + .../gfortran.dg/goacc/routine-intrinsic-2.f | 10 + .../gfortran.dg/goacc/routine-module-1.f90 | 14 + .../gfortran.dg/goacc/routine-module-2.f90 | 6 + .../gfortran.dg/goacc/routine-module-3.f90 | 43 +- .../gfortran.dg/goacc/routine-module-mod-1.f90 | 60 + .../goacc/routine-multiple-directives-1.f90 | 64 + .../goacc/routine-multiple-directives-2.f90 | 147 ++ gcc/testsuite/gfortran.dg/iso_c_binding_char_1.f90 | 2 +- gcc/testsuite/gfortran.dg/pr101514.f90 | 35 + gcc/testsuite/gfortran.dg/pr32599.f03 | 8 +- gcc/tree-call-cdce.c | 7 +- gcc/tree-core.h | 5 +- gcc/tree-data-ref.c | 10 +- gcc/tree-data-ref.h | 13 +- gcc/tree-if-conv.c | 2 +- gcc/tree-loop-distribution.c | 19 +- gcc/tree-nested.c | 6 + gcc/tree-parloops.c | 5 +- gcc/tree-predcom.c | 248 ++- gcc/tree-pretty-print.c | 3 + gcc/tree-ssa-alias.c | 6 +- gcc/tree-ssa-loop-im.c | 4 +- gcc/tree-ssa-loop-manip.c | 306 ++-- gcc/tree-ssa-loop-niter.c | 2 +- gcc/tree-ssa-reassoc.c | 9 +- gcc/tree-ssa-sccvn.c | 10 +- gcc/tree-ssa-sccvn.h | 2 +- gcc/tree-ssa-structalias.c | 15 +- gcc/tree-ssa-uninit.c | 23 +- gcc/tree-tailcall.c | 10 +- gcc/tree-vect-loop-manip.c | 10 +- gcc/tree-vect-slp-patterns.c | 6 +- gcc/tree-vect-slp.c | 14 +- gcc/tree-vectorizer.h | 6 +- gcc/tree.c | 15 +- gcc/tree.h | 2 +- gcc/value-relation.cc | 8 +- gcc/vr-values.c | 30 +- libatomic/ChangeLog | 6 + libatomic/config/linux/arm/host-config.h | 8 +- libgomp/ChangeLog | 20 + .../libgomp.oacc-c-c++-common/routine-nohost-1.c | 63 + .../libgomp.oacc-c-c++-common/routine-nohost-2.c | 39 + .../libgomp.oacc-c-c++-common/routine-nohost-2_2.c | 18 + .../libgomp.oacc-fortran/routine-nohost-1.f90 | 63 + libsanitizer/ChangeLog | 9 + libsanitizer/LOCAL_PATCHES | 3 +- libsanitizer/MERGE | 2 +- libsanitizer/asan/Makefile.am | 1 - libsanitizer/asan/Makefile.in | 8 +- libsanitizer/asan/asan_allocator.cpp | 10 +- libsanitizer/asan/asan_errors.cpp | 1 - libsanitizer/asan/asan_fake_stack.cpp | 50 +- libsanitizer/asan/asan_flags.cpp | 4 - libsanitizer/asan/asan_flags.inc | 3 +- libsanitizer/asan/asan_interceptors.cpp | 28 +- libsanitizer/asan/asan_interceptors.h | 4 +- .../asan/asan_interceptors_memintrinsics.cpp | 6 +- libsanitizer/asan/asan_interface.inc | 11 + libsanitizer/asan/asan_internal.h | 15 +- libsanitizer/asan/asan_malloc_linux.cpp | 36 +- libsanitizer/asan/asan_malloc_local.h | 52 - libsanitizer/asan/asan_mapping.h | 29 +- libsanitizer/asan/asan_mapping_myriad.h | 85 - libsanitizer/asan/asan_new_delete.cpp | 20 +- libsanitizer/asan/asan_poisoning.cpp | 19 +- libsanitizer/asan/asan_poisoning.h | 3 - libsanitizer/asan/asan_rtems.cpp | 266 --- libsanitizer/asan/asan_rtl.cpp | 47 +- libsanitizer/asan/asan_shadow_setup.cpp | 11 +- libsanitizer/asan/asan_stack.cpp | 3 +- libsanitizer/asan/asan_thread.cpp | 45 +- libsanitizer/asan/asan_thread.h | 17 +- libsanitizer/asan/libtool-version | 2 +- libsanitizer/hwasan/Makefile.am | 2 + libsanitizer/hwasan/Makefile.in | 9 +- libsanitizer/hwasan/hwasan.cpp | 77 +- libsanitizer/hwasan/hwasan.h | 42 +- .../hwasan/hwasan_allocation_functions.cpp | 172 ++ libsanitizer/hwasan/hwasan_allocator.cpp | 35 +- libsanitizer/hwasan/hwasan_allocator.h | 7 +- libsanitizer/hwasan/hwasan_dynamic_shadow.cpp | 4 +- libsanitizer/hwasan/hwasan_fuchsia.cpp | 192 +++ libsanitizer/hwasan/hwasan_interceptors.cpp | 182 +- libsanitizer/hwasan/hwasan_linux.cpp | 166 +- libsanitizer/hwasan/hwasan_mapping.h | 17 +- libsanitizer/hwasan/hwasan_new_delete.cpp | 39 +- libsanitizer/hwasan/hwasan_poisoning.cpp | 24 - libsanitizer/hwasan/hwasan_report.cpp | 206 ++- libsanitizer/hwasan/hwasan_thread.cpp | 21 +- libsanitizer/hwasan/hwasan_thread.h | 11 +- libsanitizer/hwasan/hwasan_thread_list.cpp | 2 +- libsanitizer/hwasan/hwasan_thread_list.h | 8 +- libsanitizer/include/sanitizer/dfsan_interface.h | 95 +- libsanitizer/interception/interception.h | 33 +- libsanitizer/lsan/lsan.cpp | 14 +- libsanitizer/lsan/lsan_common.h | 4 +- libsanitizer/lsan/lsan_thread.cpp | 7 +- libsanitizer/sanitizer_common/Makefile.am | 2 +- libsanitizer/sanitizer_common/Makefile.in | 19 +- .../sanitizer_common/sanitizer_addrhashmap.h | 106 +- .../sanitizer_common/sanitizer_allocator.cpp | 38 +- .../sanitizer_allocator_combined.h | 4 +- .../sanitizer_allocator_local_cache.h | 19 +- .../sanitizer_allocator_primary32.h | 4 +- .../sanitizer_allocator_primary64.h | 170 +- .../sanitizer_allocator_secondary.h | 8 +- libsanitizer/sanitizer_common/sanitizer_common.cpp | 15 +- libsanitizer/sanitizer_common/sanitizer_common.h | 23 +- .../sanitizer_common_interceptors.inc | 84 +- .../sanitizer_common/sanitizer_common_libcdep.cpp | 4 +- .../sanitizer_common/sanitizer_common_nolibc.cpp | 1 - .../sanitizer_deadlock_detector1.cpp | 2 +- .../sanitizer_deadlock_detector2.cpp | 32 +- libsanitizer/sanitizer_common/sanitizer_errno.h | 3 +- .../sanitizer_common/sanitizer_fuchsia.cpp | 33 +- libsanitizer/sanitizer_common/sanitizer_fuchsia.h | 2 + libsanitizer/sanitizer_common/sanitizer_libc.h | 3 +- .../sanitizer_common/sanitizer_libignore.cpp | 25 + .../sanitizer_common/sanitizer_libignore.h | 35 +- libsanitizer/sanitizer_common/sanitizer_linux.cpp | 46 +- .../sanitizer_common/sanitizer_linux_libcdep.cpp | 37 +- libsanitizer/sanitizer_common/sanitizer_mac.cpp | 13 +- libsanitizer/sanitizer_common/sanitizer_mutex.cpp | 39 + libsanitizer/sanitizer_common/sanitizer_mutex.h | 272 ++- libsanitizer/sanitizer_common/sanitizer_netbsd.cpp | 11 +- libsanitizer/sanitizer_common/sanitizer_platform.h | 25 +- .../sanitizer_platform_interceptors.h | 12 +- .../sanitizer_platform_limits_posix.h | 10 +- .../sanitizer_common/sanitizer_posix_libcdep.cpp | 15 +- libsanitizer/sanitizer_common/sanitizer_printf.cpp | 27 +- .../sanitizer_common/sanitizer_quarantine.h | 3 +- libsanitizer/sanitizer_common/sanitizer_rtems.cpp | 281 --- libsanitizer/sanitizer_common/sanitizer_rtems.h | 20 - .../sanitizer_common/sanitizer_solaris.cpp | 18 +- .../sanitizer_common/sanitizer_stacktrace.h | 36 +- .../sanitizer_stacktrace_libcdep.cpp | 185 +- .../sanitizer_symbolizer_markup.cpp | 15 +- .../sanitizer_symbolizer_report.cpp | 22 +- .../sanitizer_common/sanitizer_symbolizer_rtems.h | 40 - .../sanitizer_common/sanitizer_thread_registry.cpp | 29 +- .../sanitizer_common/sanitizer_thread_registry.h | 18 +- .../sanitizer_common/sanitizer_thread_safety.h | 42 + libsanitizer/sanitizer_common/sanitizer_win.cpp | 26 +- libsanitizer/tsan/Makefile.am | 3 +- libsanitizer/tsan/Makefile.in | 8 +- libsanitizer/tsan/libtool-version | 2 +- libsanitizer/tsan/tsan_clock.cpp | 29 +- libsanitizer/tsan/tsan_defs.h | 16 - libsanitizer/tsan/tsan_interceptors.h | 16 +- libsanitizer/tsan/tsan_interceptors_mac.cpp | 9 +- libsanitizer/tsan/tsan_interceptors_posix.cpp | 41 +- libsanitizer/tsan/tsan_interface.h | 3 +- libsanitizer/tsan/tsan_interface_ann.cpp | 6 +- libsanitizer/tsan/tsan_interface_atomic.cpp | 54 +- libsanitizer/tsan/tsan_mman.cpp | 5 +- libsanitizer/tsan/tsan_mutex.cpp | 11 +- libsanitizer/tsan/tsan_mutex.h | 5 +- libsanitizer/tsan/tsan_platform.h | 54 + libsanitizer/tsan/tsan_platform_linux.cpp | 6 + libsanitizer/tsan/tsan_platform_posix.cpp | 20 +- libsanitizer/tsan/tsan_rtl.cpp | 51 +- libsanitizer/tsan/tsan_rtl.h | 21 - libsanitizer/tsan/tsan_rtl_mutex.cpp | 17 - libsanitizer/tsan/tsan_rtl_s390x.S | 47 + libsanitizer/tsan/tsan_rtl_thread.cpp | 12 - libsanitizer/tsan/tsan_stack_trace.cpp | 8 +- libsanitizer/tsan/tsan_stat.cpp | 186 -- libsanitizer/tsan/tsan_stat.h | 191 --- libsanitizer/tsan/tsan_sync.cpp | 5 +- libsanitizer/tsan/tsan_trace.h | 4 +- libsanitizer/tsan/tsan_update_shadow_word_inl.h | 12 +- libsanitizer/ubsan/ubsan_diag_standalone.cpp | 8 +- libsanitizer/ubsan/ubsan_platform.h | 8 +- libstdc++-v3/ChangeLog | 38 + libstdc++-v3/config/os/aix/os_defines.h | 5 + .../doc/html/manual/debug_mode_semantics.html | 4 +- libstdc++-v3/doc/html/manual/debug_mode_using.html | 15 +- libstdc++-v3/doc/xml/manual/debug_mode.xml | 25 +- libstdc++-v3/include/bits/hashtable.h | 17 +- libstdc++-v3/include/bits/ranges_uninitialized.h | 26 +- libstdc++-v3/include/bits/std_function.h | 18 +- libstdc++-v3/include/debug/array | 45 + libstdc++-v3/include/ext/new_allocator.h | 38 +- libstdc++-v3/include/ext/rope | 9 +- libstdc++-v3/src/c++17/fs_ops.cc | 2 +- libstdc++-v3/src/filesystem/ops.cc | 2 +- .../23_containers/unordered_map/cons/default.cc | 15 + .../23_containers/unordered_set/cons/default.cc | 14 + .../filesystem/operations/create_directories.cc | 23 + .../filesystem/operations/create_directory.cc | 4 + .../filesystem/operations/create_directories.cc | 23 + .../filesystem/operations/create_directory.cc | 4 + libstdc++-v3/testsuite/ext/rope/101542.cc | 27 + libstdc++-v3/testsuite/util/testsuite_iterators.h | 8 + 327 files changed, 10163 insertions(+), 4123 deletions(-)