From: GCC Administrator Date: Sat, 12 Sep 2020 00:16:30 +0000 (+0000) Subject: Daily bump. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ac35c090821f92f41e83d1688eaf2e2b4946afb1;p=gcc.git Daily bump. --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 953f954cd32..1120143fa76 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,86 @@ +2020-09-11 Michael Meissner + + * config/rs6000/rs6000.c (rs6000_maybe_emit_maxc_minc): Rename + from rs6000_emit_p9_fp_minmax. Change return type to bool. Add + comments to document NaN/signed zero behavior. + (rs6000_maybe_emit_fp_cmove): Rename from rs6000_emit_p9_fp_cmove. + (have_compare_and_set_mask): New helper function. + (rs6000_emit_cmove): Update calls to new names and the new helper + function. + +2020-09-11 Nathan Sidwell + + * config/i386/sse.md (mov): Fix operand indices. + +2020-09-11 Martin Sebor + + PR middle-end/96903 + * builtins.c (compute_objsize): Remove incorrect offset adjustment. + (compute_objsize): Adjust offset range here instead. + +2020-09-11 Richard Biener + + PR tree-optimization/97020 + * tree-vect-slp.c (vect_slp_analyze_operations): Apply + SLP costs when doing loop vectorization. + +2020-09-11 Tom de Vries + + PR target/96964 + * config/nvptx/nvptx.md (define_expand "atomic_test_and_set"): New + expansion. + +2020-09-11 Andrew Stubbs + + * config/gcn/gcn.c (gcn_hard_regno_mode_ok): Align TImode registers. + * config/gcn/gcn.md: Assert that TImode registers do not early clobber. + +2020-09-11 Richard Biener + + * tree-vectorizer.h (_slp_instance::location): New method. + (vect_schedule_slp): Adjust prototype. + * tree-vectorizer.c (vec_info::remove_stmt): Adjust + the BB region begin if we removed the stmt it points to. + * tree-vect-loop.c (vect_transform_loop): Adjust. + * tree-vect-slp.c (_slp_instance::location): Implement. + (vect_analyze_slp_instance): For BB vectorization set + vect_location to that of the instance. + (vect_slp_analyze_operations): Likewise. + (vect_bb_vectorization_profitable_p): Remove wrapper. + (vect_slp_analyze_bb_1): Remove cost check here. + (vect_slp_region): Cost check and code generate subgraphs separately, + report optimized locations and missed optimizations due to + profitability for each of them. + (vect_schedule_slp): Get the vector of SLP graph entries to + vectorize as argument. + +2020-09-11 Richard Biener + + PR tree-optimization/97013 + * tree-vect-slp.c (vect_slp_analyze_bb_1): Remove duplicate dumping. + +2020-09-11 Richard Biener + + * tree-vect-slp.c (vect_build_slp_tree_1): Check vector + types for all lanes are compatible. + (vect_analyze_slp_instance): Appropriately check for stores. + (vect_schedule_slp): Likewise. + +2020-09-11 Tom de Vries + + * config/nvptx/nvptx.c (nvptx_assemble_value): Fix undefined + behaviour. + +2020-09-11 Tom de Vries + + * config/nvptx/nvptx.c (nvptx_assemble_value): Handle negative + __int128. + +2020-09-11 Aaron Sawdey + + * config/rs6000/rs6000.c (rs6000_option_override_internal): + Change default. + 2020-09-10 Michael Meissner * config/rs6000/rs6000-protos.h (rs6000_emit_cmove): Change return diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 15fb79cba7d..c977cef8bc2 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20200911 +20200912 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 22fa76595db..d30d1e72e02 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,25 @@ +2020-09-11 Eric Botcazou + + * gcc-interface/utils.c (type_has_variable_size): New function. + (create_field_decl): In the packed case, also force byte alignment + when the type of the field has variable size. + +2020-09-11 Eric Botcazou + + * gcc-interface/misc.c (get_array_bit_stride): Return TYPE_ADA_SIZE + for record and union types. + +2020-09-11 Eric Botcazou + + * gcc-interface/misc.c (gnat_get_fixed_point_type): Bail out only + when the GNAT encodings are specifically used. + +2020-09-11 Eric Botcazou + + * gcc-interface/decl.c (gnat_to_gnu_entity) : Only + create extra subtypes for discriminants if the RM size of the base + type of the index type is lower than that of the index type. + 2020-09-10 Eric Botcazou * gcc-interface/decl.c (set_rm_size): Do not take into account the diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 207476347a0..90ecac8b753 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,22 @@ +2020-09-11 David Malcolm + + PR analyzer/96798 + * region-model-impl-calls.cc (region_model::impl_call_memcpy): + New. + (region_model::impl_call_strcpy): New. + * region-model.cc (region_model::on_call_pre): Flag unhandled + builtins that are non-pure as having unknown side-effects. + Implement BUILT_IN_MEMCPY, BUILT_IN_MEMCPY_CHK, BUILT_IN_STRCPY, + BUILT_IN_STRCPY_CHK, BUILT_IN_FPRINTF, BUILT_IN_FPRINTF_UNLOCKED, + BUILT_IN_PUTC, BUILT_IN_PUTC_UNLOCKED, BUILT_IN_FPUTC, + BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS, BUILT_IN_FPUTS_UNLOCKED, + BUILT_IN_FWRITE, BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_PRINTF, + BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_PUTCHAR, + BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS, BUILT_IN_PUTS_UNLOCKED, + BUILT_IN_VFPRINTF, BUILT_IN_VPRINTF. + * region-model.h (region_model::impl_call_memcpy): New decl. + (region_model::impl_call_strcpy): New decl. + 2020-09-09 David Malcolm PR analyzer/94355 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index b1b9e27b74d..d11d92f1ce4 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,31 @@ +2020-09-11 Nathan Sidwell + + * decl.c (grokfndecl): Don't attach to local extern. + +2020-09-11 Nathan Sidwell + + * parser.c (cp_parser_objc_method_definition_list): Reimplement + loop, make sure we pop scope. + +2020-09-11 Marek Polacek + + * cp-tree.h (LOOKUP_CONSTINIT): Remove. + (LOOKUP_REWRITTEN): Adjust. + * decl.c (duplicate_decls): Set DECL_DECLARED_CONSTINIT_P. + (check_initializer): Use DECL_DECLARED_CONSTINIT_P instead of + LOOKUP_CONSTINIT. + (cp_finish_decl): Don't set DECL_DECLARED_CONSTINIT_P. Use + DECL_DECLARED_CONSTINIT_P instead of LOOKUP_CONSTINIT. + (grokdeclarator): Set DECL_DECLARED_CONSTINIT_P. + * decl2.c (grokfield): Don't handle LOOKUP_CONSTINIT. + * parser.c (cp_parser_decomposition_declaration): Remove + LOOKUP_CONSTINIT handling. + (cp_parser_init_declarator): Likewise. + * pt.c (tsubst_expr): Likewise. + (instantiate_decl): Likewise. + * typeck2.c (store_init_value): Use DECL_DECLARED_CONSTINIT_P instead + of LOOKUP_CONSTINIT. + 2020-09-10 Nathan Sidwell * cp-tree.h (TINFO_VAR_DECLARED_CONSTINIT): Replace with ... diff --git a/gcc/jit/ChangeLog b/gcc/jit/ChangeLog index 0191ebf8b8d..5b321c8311a 100644 --- a/gcc/jit/ChangeLog +++ b/gcc/jit/ChangeLog @@ -1,3 +1,39 @@ +2020-09-11 Andrea Corallo + + * docs/topics/compatibility.rst (LIBGCCJIT_ABI_14): New ABI tag. + * docs/topics/expressions.rst (gcc_jit_global_set_initializer): + Document new entry point in section 'Global variables'. + * jit-playback.c (global_new_decl, global_finalize_lvalue): New + method. + (playback::context::new_global): Make use of global_new_decl, + global_finalize_lvalue. + (load_blob_in_ctor): New template function in use by the + following. + (playback::context::new_global_initialized): New method. + * jit-playback.h (class context): Decl 'new_global_initialized', + 'global_new_decl', 'global_finalize_lvalue'. + (lvalue::set_initializer): Add implementation. + * jit-recording.c (recording::memento_of_get_pointer::get_size) + (recording::memento_of_get_type::get_size): Add implementation. + (recording::global::write_initializer_reproducer): New function in + use by 'recording::global::write_reproducer'. + (recording::global::replay_into) + (recording::global::write_to_dump) + (recording::global::write_reproducer): Handle + initialized case. + * jit-recording.h (class type): Decl 'get_size' and + 'num_elements'. + * libgccjit++.h (class lvalue): Declare new 'set_initializer' + method. + (class lvalue): Decl 'is_global' and 'set_initializer'. + (class global) Decl 'write_initializer_reproducer'. Add + 'm_initializer', 'm_initializer_num_bytes' fields. Implement + 'set_initializer'. Add a destructor to free 'm_initializer'. + * libgccjit.c (gcc_jit_global_set_initializer): New function. + * libgccjit.h (gcc_jit_global_set_initializer): New function + declaration. + * libgccjit.map (LIBGCCJIT_ABI_14): New ABI tag. + 2020-08-28 Martin Sebor * jit-recording.c (recording::switch_::make_debug_string): Add argument diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 36856ed1ecf..4c94847a7d4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,69 @@ +2020-09-11 Nathan Sidwell + + * g++.dg/concepts/local-extern.C: New file. + +2020-09-11 Will Schmidt + + * gcc.target/powerpc/pr96139-a.c: Specify -mvsx option and update the + dg-require stanza to match. + * gcc.target/powerpc/pr96139-b.c: Same. + * gcc.target/powerpc/pr96139-c.c: Specify -maltivec option and update + the dg-require stanza to match. + +2020-09-11 Sunil K Pandey + + PR target/97018 + * gcc.target/i386/l_fma_double_1.c: Add option -mno-avx512f. + * gcc.target/i386/l_fma_double_2.c: Likewise. + * gcc.target/i386/l_fma_double_3.c: Likewise. + * gcc.target/i386/l_fma_double_4.c: Likewise. + * gcc.target/i386/l_fma_double_5.c: Likewise. + * gcc.target/i386/l_fma_double_6.c: Likewise. + * gcc.target/i386/l_fma_float_1.c: Likewise. + * gcc.target/i386/l_fma_float_2.c: Likewise. + * gcc.target/i386/l_fma_float_3.c: Likewise. + * gcc.target/i386/l_fma_float_4.c: Likewise. + * gcc.target/i386/l_fma_float_5.c: Likewise. + * gcc.target/i386/l_fma_float_6.c: Likewise. + +2020-09-11 Martin Sebor + + PR middle-end/96903 + * gcc.dg/Wstringop-overflow-42.c:: Add comment. + * gcc.dg/Wstringop-overflow-43.c: New test. + +2020-09-11 Nathan Sidwell + + * obj-c++.dg/syntax-error-9.mm: Adjust expected errors. + +2020-09-11 Andrew Stubbs + + * gcc.dg/gimplefe-44.c: Require exceptions. + +2020-09-11 Andrea Corallo + + * jit.dg/all-non-failing-tests.h: Add test-blob.c. + * jit.dg/test-global-set-initializer.c: New testcase. + +2020-09-11 Eric Botcazou + + * gnat.dg/pack27.adb: New test. + * gnat.dg/pack27_pkg.ads: New helper. + +2020-09-11 Eric Botcazou + + * gnat.dg/specs/discr7.ads: New test. + +2020-09-11 Tom de Vries + + * gcc.target/nvptx/int128.c: New test. + +2020-09-11 David Malcolm + + PR analyzer/96798 + * gcc.dg/analyzer/memcpy-1.c: New test. + * gcc.dg/analyzer/strcpy-1.c: New test. + 2020-09-10 Alex Coplan * gcc.target/aarch64/acle/armv8-r.c: New test. diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog index ce4fdef004e..d2955679ad5 100644 --- a/libatomic/ChangeLog +++ b/libatomic/ChangeLog @@ -1,3 +1,11 @@ +2020-09-11 Tom de Vries + + PR target/96898 + * configure.tgt: Add nvptx. + * libatomic_i.h (MASK_8, INVERT_MASK_8): New macro definition. + * config/nvptx/host-config.h: New file. + * config/nvptx/lock.c: New file. + 2020-09-07 Tom de Vries * testsuite/libatomic.c/atomic-generic.c: Include string.h. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 717e227a883..0878f31562e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,137 @@ +2020-09-11 Thomas Rodgers + + * include/std/memory: Move #include inside C++11 + conditional includes. + +2020-09-11 Thomas Rodgers + + * include/Makefile.am (bits_headers): Add new header. + * include/Makefile.in: Regenerate. + * include/bits/align.h: New file. + * include/std/memory (align): Move definition to bits/align.h. + (assume_aligned): Likewise. + +2020-09-11 Jonathan Wakely + + * include/std/chrono [C++17] (chrono::__detail::ceil): Add + using declaration to make chrono::ceil available for internal + use with a consistent name. + (chrono::__detail::__ceil_impl): New function template. + (chrono::__detail::ceil): Use __ceil_impl to compare and + increment the value. Remove SFINAE constraint. + +2020-09-11 Jonathan Wakely + + * include/bits/regex_error.h (__throw_regex_error): Fix + parameter declaration and use reserved attribute names. + +2020-09-11 Mike Crowe + + * include/std/condition_variable (condition_variable::wait_until): + Convert delta to steady_clock duration before adding to current + steady_clock time to avoid rounding errors described in PR68519. + (condition_variable::wait_for): Simplify calculation of absolute + time by using chrono::__detail::ceil in both overloads. + * testsuite/30_threads/condition_variable/members/68519.cc: + (test_wait_for): Renamed from test01. Replace unassigned val + variable with constant false. Reduce scope of mx and cv + variables to just test_wait_for function. + (test_wait_until): Add new test case. + +2020-09-11 Mike Crowe + + PR libstdc++/91486 + * include/bits/atomic_futex.h + (__atomic_futex_unsigned::_M_load_when_equal_for) + (__atomic_futex_unsigned::_M_load_when_equal_until): Use + __detail::ceil to convert delta to the reference clock + duration type to avoid resolution problems. + * include/std/chrono (__detail::ceil): Move implementation + of std::chrono::ceil into private namespace so that it's + available to pre-C++17 code. + * testsuite/30_threads/async/async.cc (test_pr91486): + Test __atomic_futex_unsigned::_M_load_when_equal_for. + +2020-09-11 Mike Crowe + + * include/bits/atomic_futex.h + (__atomic_futex_unsigned::_M_load_when_equal_until): Add + loop on generic _Clock to check the timeout against _Clock + again after _M_load_when_equal_until returns indicating a + timeout. + * testsuite/30_threads/async/async.cc: Invent slow_clock + that runs at an eleventh of steady_clock's speed. Use it + to test the user-supplied-clock variant of + __atomic_futex_unsigned::_M_load_when_equal_until works + generally with test03 and loops correctly when the timeout + time hasn't been reached in test04. + +2020-09-11 Mike Crowe + + * include/bits/atomic_futex.h (__atomic_futex_unsigned): Change + __clock_t typedef to use steady_clock so that unknown clocks are + synced to it rather than system_clock. Change existing __clock_t + overloads of _M_load_and_text_until_impl and + _M_load_when_equal_until to use system_clock explicitly. Remove + comment about DR 887 since these changes address that problem as + best as we currently able. + +2020-09-11 Mike Crowe + + * config/abi/pre/gnu.ver: Update for addition of + __atomic_futex_unsigned_base::_M_futex_wait_until_steady. + * include/bits/atomic_futex.h (__atomic_futex_unsigned_base): + Add comments to clarify that _M_futex_wait_until and + _M_load_and_test_until use CLOCK_REALTIME. + (__atomic_futex_unsigned_base::_M_futex_wait_until_steady) + (__atomic_futex_unsigned_base::_M_load_and_text_until_steady): + New member functions that use CLOCK_MONOTONIC. + (__atomic_futex_unsigned_base::_M_load_and_test_until_impl) + (__atomic_futex_unsigned_base::_M_load_when_equal_until): Add + overloads that accept a steady_clock time_point and use the + new member functions. + * src/c++11/futex.cc: Include headers required for + clock_gettime. + (futex_clock_monotonic_flag): New constant to tell futex to + use CLOCK_MONOTONIC to match existing futex_clock_realtime_flag. + (futex_clock_monotonic_unavailable): New global to store the + result of trying to use CLOCK_MONOTONIC. + (__atomic_futex_unsigned_base::_M_futex_wait_until_steady): Add + new variant of _M_futex_wait_until that uses CLOCK_MONOTONIC to + support waiting using steady_clock. + +2020-09-11 Mike Crowe + + * src/c++11/futex.cc: Add new constants for required futex + flags. Add futex_clock_realtime_unavailable flag to store + result of trying to use FUTEX_CLOCK_REALTIME. + (__atomic_futex_unsigned_base::_M_futex_wait_until): Try to + use FUTEX_WAIT_BITSET with FUTEX_CLOCK_REALTIME and only + fall back to using gettimeofday and FUTEX_WAIT if that's not + supported. + +2020-09-11 Mike Crowe + + * testsuite/30_threads/async/async.cc (test02): Test steady_clock + with std::future::wait_until. + (test03): Add new test templated on clock type waiting for future + associated with async to resolve. + (main): Call test03 to test both system_clock and steady_clock. + +2020-09-11 Torbjörn SVENSSON + Christophe Lyon + + * libsupc++/eh_call.cc: Avoid warning with -fno-exceptions. + +2020-09-11 Torbjörn SVENSSON + Christophe Lyon + + * libsupc++/eh_call.cc: Avoid warning with -fno-exceptions. + +2020-09-11 Christophe Lyon + + * include/bits/regex_error.h: Avoid warning with -fno-exceptions. + 2020-09-10 Jonathan Wakely * include/bits/locale_conv.h (__do_str_codecvt, __str_codecvt_in_all):