diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 186 | ||||
-rw-r--r-- | gcc/DATESTAMP | 2 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 15 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 67 | ||||
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 145 |
6 files changed, 420 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7e76b2f..44dadd3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,189 @@ +2020-12-03 Martin Sebor <msebor@redhat.com> + + PR c++/90629 + PR middle-end/94527 + * builtins.c (access_ref::access_ref): Initialize new member. + (compute_objsize): Use access_ref::deref. Handle simple pointer + assignment. + (expand_builtin): Remove handling of the free built-in. + (call_dealloc_argno): Same. + (find_assignment_location): New function. + (fndecl_alloc_p): Same. + (gimple_call_alloc_p): Same. + (call_dealloc_p): Same. + (matching_alloc_calls_p): Same. + (warn_dealloc_offset): Same. + (maybe_emit_free_warning): Same. + * builtins.h (struct access_ref): Declare new member. + (maybe_emit_free_warning): Make extern. Make use of access_ref. + Handle -Wmismatched-new-delete. + * calls.c (initialize_argument_information): Call + maybe_emit_free_warning. + * doc/extend.texi (attribute malloc): Update. + * doc/invoke.texi (-Wfree-nonheap-object): Expand documentation. + (-Wmismatched-new-delete): Document new option. + (-Wmismatched-dealloc): Document new option. + +2020-12-03 Alexandre Oliva <oliva@adacore.com> + + * tree.c (build_common_builtin_nodes): Declare + __builtin___clear_cache for all languages. + * builtins.c (maybe_emit_call_builtin___clear_cache): Accept + Pmode arguments. + +2020-12-03 Sebastian Huber <sebastian.huber@embedded-brains.de> + + * config/arm/t-rtems: Add "-mthumb -mcpu=cortex-r52 + -mfloat-abi=hard" multilib. + +2020-12-03 Uroš Bizjak <ubizjak@gmail.com> + Jakub Jelinek <jakub@redhat.com> + + PR target/98086 + * config/i386/i386.c (ix86_md_asm_adjustmd): Rewrite + zero-extension part to use convert_to_mode. + +2020-12-03 Andreas Krebbel <krebbel@linux.ibm.com> + + * config/s390/s390.md ("@probe_stack2<mode>"): Change mode + iterator to W. + +2020-12-03 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve-builtins-base.cc (svundef_impl::fold): + Delete. + +2020-12-03 Eric Botcazou <ebotcazou@adacore.com> + + PR middle-end/98099 + * expmed.c (flip_storage_order): In the case of a non-integer mode, + sorry out if the integer mode to be used instead is not supported. + +2020-12-03 Eric Botcazou <ebotcazou@adacore.com> + + PR middle-end/98082 + * function.c (use_register_for_decl): Also return true for a result + if cfun->tail_call_marked is true. + +2020-12-03 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/93121 + * fold-const.h (native_encode_initializer): Add mask argument + defaulted to nullptr. + (find_bitfield_repr_type): Declare. + (native_interpret_aggregate): Declare. + * fold-const.c (find_bitfield_repr_type): New function. + (native_encode_initializer): Add mask argument and support for + filling it. Handle also some bitfields without integral + DECL_BIT_FIELD_REPRESENTATIVE. + (native_interpret_aggregate): New function. + * gimple-fold.h (clear_type_padding_in_mask): Declare. + * gimple-fold.c (struct clear_padding_struct): Add clear_in_mask + member. + (clear_padding_flush): Handle buf->clear_in_mask. + (clear_padding_union): Copy clear_in_mask. Don't error if + buf->clear_in_mask is set. + (clear_padding_type): Don't error if buf->clear_in_mask is set. + (clear_type_padding_in_mask): New function. + (gimple_fold_builtin_clear_padding): Set buf.clear_in_mask to false. + * doc/extend.texi (__builtin_bit_cast): Document. + +2020-12-03 Ilya Leoshkevich <iii@linux.ibm.com> + + * tree-ssa-threadedge.c (record_temporary_equivalences_from_stmts_at_dest): + Do not allow __builtin_constant_p on a threading path. + +2020-12-03 Ilya Leoshkevich <iii@linux.ibm.com> + + * tree-ssa-strlen.c (printf_strlen_execute): Avoid division by + 0. + +2020-12-03 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/multilib-generator (arch_canonicalize): Move + code to arch-canonicalize, and call that script to canonicalize arch + string. + (canonical_order): Move code to arch-canonicalize. + (LONG_EXT_PREFIXES): Ditto. + (IMPLIED_EXT): Ditto. + * config/riscv/arch-canonicalize: New. + * config.gcc (riscv*-*-*): Canonicalize --with-arch. + +2020-12-03 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> + + * config/aarch64/aarch64-option-extensions.def + (AARCH64_OPT_EXTENSION): New +flagm option in -march for AArch64. + * config/aarch64/aarch64.h (AARCH64_FL_FLAGM): Add new flagm extension bit + mask. + (AARCH64_FL_FOR_ARCH8_4): Add flagm to Armv8.4-A. + * doc/invoke.texi: Update docs with +flagm. + +2020-12-03 liuhongt <hongtao.liu@intel.com> + + PR target/96906 + * config/i386/sse.md + (<avx512>_ucmp<mode>3<mask_scalar_merge_name>): Add a new + define_split after this insn. + +2020-12-03 liuhongt <hongtao.liu@intel.com> + + PR target/97642 + * config/i386/i386-expand.c + (ix86_expand_special_args_builtin): Don't move all-ones mask + operands into register. + * config/i386/sse.md (UNSPEC_MASKLOAD): New unspec. + (*<avx512>_load<mode>_mask): New define_insns for masked load + instructions. + (<avx512>_load<mode>_mask): Changed to define_expands which + specifically handle memory or all-ones mask operands. + (<avx512>_blendm<mode>): Changed to define_insns which are same + as original <avx512>_load<mode>_mask with adjustment of + operands order. + (*<avx512>_load<mode>): New define_insn_and_split which is + used to optimize for masked load with all one mask. + +2020-12-03 Hongyu Wang <hongyu.wang@intel.com> + + PR target/97770 + * config/i386/sse.md (popcount<mode>2): New expander + for SI/DI vector modes. + (popcount<mode>2): Likewise for QI/HI vector modes. + +2020-12-03 Alexandre Oliva <oliva@adacore.com> + + * builtins.c (default_emit_call_builtin___clear_cache): New. + (maybe_emit_call_builtin___clear_cache): New. + (expand_builtin___clear_cache): Split into the above. + (expand_builtin): Do not issue clear_cache call any more. + * builtins.h (maybe_emit_call_builtin___clear_cache): Declare. + * config/aarch64/aarch64.c (aarch64_trampoline_init): Use + maybe_emit_call_builtin___clear_cache. + * config/arc/arc.c (arc_trampoline_init): Likewise. + * config/arm/arm.c (arm_trampoline_init): Likewise. + * config/c6x/c6x.c (c6x_initialize_trampoline): Likewise. + * config/csky/csky.c (csky_trampoline_init): Likewise. + * config/m68k/linux.h (FInALIZE_TRAMPOLINE): Likewise. + * config/tilegx/tilegx.c (tilegx_trampoline_init): Likewise. + * config/tilepro/tilepro.c (tilepro_trampoline_init): Ditto. + * config/vxworks.c: Include rtl.h, memmodel.h, and optabs.h. + (vxworks_emit_call_builtin___clear_cache): New. + * config/vxworks.h (CLEAR_INSN_CACHE): Drop. + (TARGET_EMIT_CALL_BUILTIN___CLEAR_CACHE): Define. + * target.def (trampoline_init): In the documentation, refer to + maybe_emit_call_builtin___clear_cache. + (emit_call_builtin___clear_cache): New. + * doc/tm.texi.in: Add new hook point. + (CLEAR_CACHE_INSN): Remove duplicate 'both'. + * doc/tm.texi: Rebuilt. + * targhooks.h (default_meit_call_builtin___clear_cache): + Declare. + * tree.h (BUILTIN_ASM_NAME_PTR): New. + +2020-12-03 Ilya Leoshkevich <iii@linux.ibm.com> + + * tree-ssa-threadbackward.c (thread_jumps::profitable_jump_thread_path): + Do not allow __builtin_constant_p on a threading path. + 2020-12-02 Jakub Jelinek <jakub@redhat.com> * dwarf2out.c (add_scalar_info): Only use add_AT_wide for 128-bit diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 81e21c8..3fac2aa 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20201203 +20201204 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 0421c98..2e88f20 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,18 @@ +2020-12-03 Martin Sebor <msebor@redhat.com> + + PR c++/90629 + PR middle-end/94527 + * c-attribs.c (handle_dealloc_attribute): New function. + (handle_malloc_attribute): Handle argument forms of attribute. + * c.opt (-Wmismatched-dealloc): New option. + (-Wmismatched-new-delete): New option. + +2020-12-03 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/93121 + * c-common.h (enum rid): Add RID_BUILTIN_BIT_CAST. + * c-common.c (c_common_reswords): Add __builtin_bit_cast. + 2020-12-01 JeanHeyd Meneide <phdofthehouse@gmail.com> * c-cppbuiltin.c (c_cpp_builtins): Add predefined diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 6728ea1..1bf50cd 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,70 @@ +2020-12-03 Jason Merrill <jason@redhat.com> + + * cp-tree.h (releasing_vec::operator[]): Change parameter type to + ptrdiff_t. + +2020-12-03 Nathan Sidwell <nathan@acm.org> + + * cp-tree.h (OVL_EXPORT): New. + (class ovl_iterator): Add get_using, exporting_p. + * tree.c (ovl_insert): Extend using_or_hidden meaning to include + an exported using. + +2020-12-03 Nathan Sidwell <nathan@acm.org> + + * cp-tree.h (DECL_UNINSTANTIATED_TEMPLATE_FRIEND): New. + * pt.c (push_template_decl): Set it. + (tsubst_friend_function): Clear it. + +2020-12-03 Nathan Sidwell <nathan@acm.org> + + * cp-tree.h (make_unbound_class_template_raw): Declare. + (canonical_type_parameter): Declare. + * decl.c (make_unbound_class_template_raw): Break out of ... + (make_unboud_class_template): ... here. Call it. + * pt.c (canonical_type_parameter): Externalize. Refactor & set + structural_equality for type parms. + +2020-12-03 Nathan Sidwell <nathan@acm.org> + + PR c++/98107 + * tree.c (build_cplus_array_type): Mark dependency of new variant. + (cp_build_qualified_type_real, strip_typedefs): Assert + TYPE_DEPENDENT_P_VALID, or not a dependent type. + +2020-12-03 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/93121 + * cp-tree.h (cp_build_bit_cast): Declare. + * cp-tree.def (BIT_CAST_EXPR): New tree code. + * cp-objcp-common.c (names_builtin_p): Handle RID_BUILTIN_BIT_CAST. + (cp_common_init_ts): Handle BIT_CAST_EXPR. + * cxx-pretty-print.c (cxx_pretty_printer::postfix_expression): + Likewise. + * parser.c (cp_parser_postfix_expression): Handle + RID_BUILTIN_BIT_CAST. + * semantics.c (cp_build_bit_cast): New function. + * tree.c (cp_tree_equal): Handle BIT_CAST_EXPR. + (cp_walk_subtrees): Likewise. + * pt.c (tsubst_copy): Likewise. + * constexpr.c (check_bit_cast_type, cxx_eval_bit_cast): New functions. + (cxx_eval_constant_expression): Handle BIT_CAST_EXPR. + (potential_constant_expression_1): Likewise. + * cp-gimplify.c (cp_genericize_r): Likewise. + +2020-12-03 Jason Merrill <jason@redhat.com> + + * parser.c (cp_parser_primary_expression): Distinguish + parms from vars in error. + (cp_parser_late_parsing_default_args): Pushdecl parms + as we go. + +2020-12-03 Jason Merrill <jason@redhat.com> + + * name-lookup.c (begin_scope): Set immediate_fn_ctx_p. + * parser.c (cp_parser_late_parsing_default_args): Push + sk_function_parms scope. + 2020-12-03 Peter Bergner <bergner@linux.ibm.com> PR c++/97947 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index a8e8bbb..1826640 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2020-12-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/95342 + * decl.c (gfc_match_function_decl): Avoid NULL pointer dereference. + (gfc_match_subroutine): Likewise. + 2020-11-30 Tobias Burnus <tobias@codesourcery.com> PR fortran/98011 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3339d70..0e91a06 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,148 @@ +2020-12-03 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/concepts-nodiscard1.C: XFAIL. + +2020-12-03 Martin Sebor <msebor@redhat.com> + + PR c++/90629 + PR middle-end/94527 + * g++.dg/asan/asan_test.cc: Fix a bug. + * g++.dg/warn/delete-array-1.C: Add expected warning. + * g++.old-deja/g++.other/delete2.C: Add expected warning. + * g++.dg/warn/Wfree-nonheap-object-2.C: New test. + * g++.dg/warn/Wfree-nonheap-object.C: New test. + * g++.dg/warn/Wmismatched-new-delete.C: New test. + * g++.dg/warn/Wmismatched-dealloc-2.C: New test. + * g++.dg/warn/Wmismatched-dealloc.C: New test. + * gcc.dg/Wmismatched-dealloc.c: New test. + * gcc.dg/analyzer/malloc-1.c: Prune out expected warning. + * gcc.dg/attr-malloc.c: New test. + * gcc.dg/free-1.c: Adjust text of expected warning. + * gcc.dg/free-2.c: Same. + * gcc.dg/torture/pr71816.c: Prune out expected warning. + * gcc.dg/tree-ssa/pr19831-2.c: Add an expected warning. + * gcc.dg/Wfree-nonheap-object-2.c: New test. + * gcc.dg/Wfree-nonheap-object-3.c: New test. + * gcc.dg/Wfree-nonheap-object.c: New test. + * g++.dg/warn/Wfree-nonheap-object.s: New file. + +2020-12-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/95342 + * gfortran.dg/pr95342.f90: New test. + +2020-12-03 Ian Lance Taylor <iant@golang.org> + + * go.test/go-test.exp (go-gc-tests): Add -I. when building all + sources in a directory (errorcheckdir, compiledir, rundir, + rundircmpout). + +2020-12-03 Jason Merrill <jason@redhat.com> + + PR c++/98019 + * g++.dg/cpp2a/concepts-nodiscard1.C: New test. + +2020-12-03 Uroš Bizjak <ubizjak@gmail.com> + Jakub Jelinek <jakub@redhat.com> + + PR target/98086 + * gcc.target/i386/pr98086.c: New test. + +2020-12-03 Nathan Sidwell <nathan@acm.org> + + PR c++/98115 + PR c++/98116 + * g++.dg/template/pr98115.C: New. + * g++.dg/template/pr98116.C: New. + +2020-12-03 Andreas Krebbel <krebbel@linux.ibm.com> + + * gcc.target/s390/stack-clash-4.c: New test. + +2020-12-03 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/undef_1.c: New test. + +2020-12-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.dg/pr98099.c: New test. + +2020-12-03 Eric Botcazou <ebotcazou@adacore.com> + + * g++.dg/cpp2a/pr98082.C: New test. + +2020-12-03 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/93121 + * g++.dg/cpp2a/bit-cast1.C: New test. + * g++.dg/cpp2a/bit-cast2.C: New test. + * g++.dg/cpp2a/bit-cast3.C: New test. + * g++.dg/cpp2a/bit-cast4.C: New test. + * g++.dg/cpp2a/bit-cast5.C: New test. + +2020-12-03 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp2a/consteval-defarg2.C: New test. + +2020-12-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/98104 + * g++.dg/warn/pr98104.C: New test. + +2020-12-03 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx512bw-pr96906-1.c: New test. + * gcc.target/i386/pr96906-1.c: Add -mno-avx512f. + +2020-12-03 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx512bw-vmovdqu16-1.c: Adjust testcase to + make sure only masked load instruction is generated. + * gcc.target/i386/avx512bw-vmovdqu8-1.c: Ditto. + * gcc.target/i386/avx512f-vmovapd-1.c: Ditto. + * gcc.target/i386/avx512f-vmovaps-1.c: Ditto. + * gcc.target/i386/avx512f-vmovdqa32-1.c: Ditto. + * gcc.target/i386/avx512f-vmovdqa64-1.c: Ditto. + * gcc.target/i386/avx512vl-vmovapd-1.c: Ditto. + * gcc.target/i386/avx512vl-vmovaps-1.c: Ditto. + * gcc.target/i386/avx512vl-vmovdqa32-1.c: Ditto. + * gcc.target/i386/avx512vl-vmovdqa64-1.c: Ditto. + * gcc.target/i386/pr97642-1.c: New test. + * gcc.target/i386/pr97642-2.c: New test. + +2020-12-03 Jason Merrill <jason@redhat.com> + + * g++.dg/parse/defarg17.C: New test. + +2020-12-03 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/consteval-defarg1.C: New test. + +2020-12-03 Hongyu Wang <hongyu.wang@intel.com> + + PR target/97770 + * gcc.target/i386/avx512bitalg-pr97770-1.c: New test. + * gcc.target/i386/avx512vpopcntdq-pr97770-1.c: Likewise. + * gcc.target/i386/avx512vpopcntdq-pr97770-2.c: Likewise. + * gcc.target/i386/avx512vpopcntdqvl-pr97770-1.c: Likewise. + +2020-12-03 Alexandre Oliva <oliva@adacore.com> + + * lib/options.exp (check_for_options_with_filter): Detect + unavailable compiler for the selected language, and bail out + as unsupported. + +2020-12-03 Martin Sebor <msebor@redhat.com> + + * gcc.dg/tree-ssa/builtin-sprintf-warn-1.c: Adjust expected warnings + to correctly reflect the maximum object size. + * gcc.dg/tree-ssa/builtin-sprintf-warn-11.c: Same. + * gcc.dg/tree-ssa/builtin-sprintf-warn-18.c: Same. + +2020-12-03 Ilya Leoshkevich <iii@linux.ibm.com> + + * gcc.target/s390/builtin-constant-p-threading.c: New test. + 2020-12-03 Peter Bergner <bergner@linux.ibm.com> PR c++/97947 |