From 3916902930769d5172c0feaa5f535ca7b2bafdf7 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Thu, 29 Jul 2021 00:16:43 +0000 Subject: [PATCH] Daily bump. --- gcc/ChangeLog | 194 ++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 43 +++++++++ gcc/cp/ChangeLog | 4 + gcc/d/ChangeLog | 29 ++++++ gcc/fortran/ChangeLog | 13 +++ gcc/testsuite/ChangeLog | 156 ++++++++++++++++++++++++++++++++ libgfortran/ChangeLog | 43 +++++++++ libsanitizer/ChangeLog | 5 ++ 9 files changed, 488 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f071d26cd30..98eef36c198 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,197 @@ +2021-07-28 Martin Sebor + + PR middle-end/101494 + * tree-ssa-uninit.c (maybe_warn_operand): Correct object offset + and size computation. + +2021-07-28 Martin Sebor + + PR middle-end/101601 + * gimple-array-bounds.cc (array_bounds_checker::check_mem_ref): Remove + a pointless test. + Handle pointers to functions. + +2021-07-28 Martin Sebor + + * Makefile.in (OBJS): Add gimple-ssa-warn-access.o and pointer-query.o. + * attribs.h (fndecl_dealloc_argno): Move fndecl_dealloc_argno to tree.h. + * builtins.c (compute_objsize_r): Move to pointer-query.cc. + (access_ref::access_ref): Same. + (access_ref::phi): Same. + (access_ref::get_ref): Same. + (access_ref::size_remaining): Same. + (access_ref::offset_in_range): Same. + (access_ref::add_offset): Same. + (access_ref::inform_access): Same. + (ssa_name_limit_t::visit_phi): Same. + (ssa_name_limit_t::leave_phi): Same. + (ssa_name_limit_t::next): Same. + (ssa_name_limit_t::next_phi): Same. + (ssa_name_limit_t::~ssa_name_limit_t): Same. + (pointer_query::pointer_query): Same. + (pointer_query::get_ref): Same. + (pointer_query::put_ref): Same. + (pointer_query::flush_cache): Same. + (warn_string_no_nul): Move to gimple-ssa-warn-access.cc. + (check_nul_terminated_array): Same. + (unterminated_array): Same. + (maybe_warn_for_bound): Same. + (check_read_access): Same. + (warn_for_access): Same. + (get_size_range): Same. + (check_access): Same. + (gimple_call_alloc_size): Move to tree.c. + (gimple_parm_array_size): Move to pointer-query.cc. + (get_offset_range): Same. + (gimple_call_return_array): Same. + (handle_min_max_size): Same. + (handle_array_ref): Same. + (handle_mem_ref): Same. + (compute_objsize): Same. + (gimple_call_alloc_p): Move to gimple-ssa-warn-access.cc. + (call_dealloc_argno): Same. + (fndecl_dealloc_argno): Same. + (new_delete_mismatch_p): Same. + (matching_alloc_calls_p): Same. + (warn_dealloc_offset): Same. + (maybe_emit_free_warning): Same. + * builtins.h (check_nul_terminated_array): Move to + gimple-ssa-warn-access.h. + (check_nul_terminated_array): Same. + (warn_string_no_nul): Same. + (unterminated_array): Same. + (class ssa_name_limit_t): Same. + (class pointer_query): Same. + (struct access_ref): Same. + (class range_query): Same. + (struct access_data): Same. + (gimple_call_alloc_size): Same. + (gimple_parm_array_size): Same. + (compute_objsize): Same. + (class access_data): Same. + (maybe_emit_free_warning): Same. + * calls.c (initialize_argument_information): Remove call to + maybe_emit_free_warning. + * gimple-array-bounds.cc: Include new header.. + * gimple-fold.c: Same. + * gimple-ssa-sprintf.c: Same. + * gimple-ssa-warn-restrict.c: Same. + * passes.def: Add pass_warn_access. + * tree-pass.h (make_pass_warn_access): Declare. + * tree-ssa-strlen.c: Include new headers. + * tree.c (fndecl_dealloc_argno): Move here from builtins.c. + * tree.h (fndecl_dealloc_argno): Move here from attribs.h. + * gimple-ssa-warn-access.cc: New file. + * gimple-ssa-warn-access.h: New file. + * pointer-query.cc: New file. + * pointer-query.h: New file. + +2021-07-28 Jakub Jelinek + + PR middle-end/101624 + * ubsan.c (maybe_instrument_pointer_overflow, + instrument_object_size): Only test DECL_REGISTER on VAR_DECLs, + PARM_DECLs or RESULT_DECLs. + * sanopt.c (maybe_optimize_ubsan_ptr_ifn): Likewise. + +2021-07-28 Jakub Jelinek + + PR middle-end/101642 + * match.pd (bswap16 (x) == bswap16 (y)): Cast both operands + to type of bswap16 for comparison. + (bswap16 (x) == cst): Cast bswap16 operand to type of cst. + +2021-07-28 Richard Biener + + PR tree-optimization/101615 + * tree-vect-slp.c (vect_optimize_slp): Materialize permutes + at CTOR SLP graph entries. + +2021-07-28 Kyrylo Tkachov + + * config/aarch64/aarch64.md (*extend2_aarch64): + Add "r,w" alternative. + +2021-07-28 H.J. Lu + + PR target/101456 + * config/i386/i386.c (ix86_avx_u128_mode_needed): Don't set + AVX_U128_DIRTY when all bits are zero. + +2021-07-28 Richard Biener + + PR tree-optimization/101615 + * tree-vect-slp.c (vect_optimize_slp): Pre-existing vector + external nodes cannot be permuted so make them perm_out 0. + +2021-07-28 Andrew Stubbs + + PR target/100208 + * config.in: Regenerate. + * config/gcn/gcn-hsa.h (A_FIJI): New define. + (A_900): New define. + (A_906): New define. + (A_908): New define. + (ASM_SPEC): Use A_FIJI, A_900, A_906 and A_908. + * config/gcn/gcn.c (output_file_start): Adjust attributes according + to the assembler capabilities. + * config/gcn/mkoffload.c (main): Likewise. + * configure: Regenerate. + * configure.ac: Add tests for LLVM assembler attribute features. + +2021-07-28 Andrew MacLeod + + * gimple-range-gori.cc (gori_compute::outgoing_edge_range_p): Check for + cond_false and cond_true on branches. + +2021-07-28 Bin Cheng + + * config/aarch64/aarch64.c (aarch64_gen_adjusted_ldpstp): use + gcc_stablesort. + +2021-07-28 Bin Cheng + + * alias.c (init_alias_analysis): Don't skip prologue/epilogue. + +2021-07-28 Jakub Jelinek + + PR target/101611 + * config/i386/sse.md (vashr3): Split into vashrv8di3 expander + and vashrv4di3 expander, where the latter requires just TARGET_AVX2 + and has special !TARGET_AVX512VL expansion. + (vashrv2di3): Rename to ... + (vashrv2di3): ... this. Change condition to TARGET_XOP || TARGET_AVX2 + and add special !TARGET_XOP && !TARGET_AVX512VL expansion. + +2021-07-28 Martin Uecker + + * calls.c (maybe_warn_rdwr_sizes): Correct argument + numbers in warning that were switched. + +2021-07-28 Kewen Lin + + PR tree-optimization/101596 + * tree-vect-patterns.c (vect_recog_mulhs_pattern): Fix wrong check + by using new_type's precision instead. + +2021-07-28 liuhongt + + PR target/99881 + * config/i386/i386.h (processor_costs): Add new member + integer_to_sse. + * config/i386/x86-tune-costs.h (ix86_size_cost, i386_cost, + i486_cost, pentium_cost, lakemont_cost, pentiumpro_cost, + geode_cost, k6_cost, athlon_cost, k8_cost, amdfam10_cost, + bdver_cost, znver1_cost, znver2_cost, znver3_cost, + btver1_cost, btver2_cost, btver3_cost, pentium4_cost, + nocona_cost, atom_cost, atom_cost, slm_cost, intel_cost, + generic_cost, core_cost): Initialize integer_to_sse same value + as sse_op. + (skylake_cost): Initialize integer_to_sse twice as much as sse_op. + * config/i386/i386.c (ix86_builtin_vectorization_cost): + Use integer_to_sse instead of sse_op to calculate the cost of + vec_construct. + 2021-07-27 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (write_ovld_static_init): New diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 10746464112..15aac4430a7 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20210728 +20210729 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 3234732b99a..bc0f4bd92e8 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,46 @@ +2021-07-28 David Malcolm + + * region-model.cc (region_model::on_call_pre): Treat + IFN_UBSAN_BOUNDS, BUILT_IN_STACK_SAVE, and BUILT_IN_STACK_RESTORE + as no-ops, rather than handling them as unknown functions. + +2021-07-28 David Malcolm + + * region-model-impl-calls.cc (region_model::impl_call_alloca): + Drop redundant return value. + (region_model::impl_call_builtin_expect): Likewise. + (region_model::impl_call_calloc): Likewise. + (region_model::impl_call_malloc): Likewise. + (region_model::impl_call_memset): Likewise. + (region_model::impl_call_operator_new): Likewise. + (region_model::impl_call_operator_delete): Likewise. + (region_model::impl_call_strlen): Likewise. + * region-model.cc (region_model::on_call_pre): Fix return value of + known functions that don't have unknown side-effects. + * region-model.h (region_model::impl_call_alloca): Drop redundant + return value. + (region_model::impl_call_builtin_expect): Likewise. + (region_model::impl_call_calloc): Likewise. + (region_model::impl_call_malloc): Likewise. + (region_model::impl_call_memset): Likewise. + (region_model::impl_call_strlen): Likewise. + (region_model::impl_call_operator_new): Likewise. + (region_model::impl_call_operator_delete): Likewise. + +2021-07-28 Siddhesh Poyarekar + + * analyzer.cc (is_named_call_p, is_std_named_call_p): Make + first argument a const_tree. + * analyzer.h (is_named_call_p, -s_std_named_call_p): Likewise. + * sm-malloc.cc (known_allocator_p): New function. + (malloc_state_machine::on_stmt): Use it. + +2021-07-28 Siddhesh Poyarekar + + * sm-malloc.cc + (malloc_state_machine::get_or_create_deallocator): Recognize + __builtin_free. + 2021-07-26 David Malcolm * region-model.cc (region_model::on_call_pre): Always set conjured diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 217a1ac5639..27323bb0151 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2021-07-28 Martin Sebor + + * init.c: Include new header. + 2021-07-27 Marek Polacek DR 1512 diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index f0489c2b3e7..6bf4b8fd489 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,3 +1,32 @@ +2021-07-28 Iain Buclaw + + PR d/101640 + * expr.cc (binary_op): Use build2 instead of fold_build2. + +2021-07-28 Iain Buclaw + + PR d/101490 + * dmd/MERGE: Merge upstream dmd 27e388b4c. + * d-codegen.cc (build_array_index): Handle void arrays same as byte. + * d-convert.cc (convert_expr): Handle converting to zero-sized arrays. + +2021-07-28 Iain Buclaw + + PR d/101441 + * dmd/MERGE: Merge upstream dmd f8c1ca928. + +2021-07-28 Iain Buclaw + + PR d/101127 + * d-builtins.cc (d_builtin_function_ext_scope): New function. + * d-lang.cc (LANG_HOOKS_BUILTIN_FUNCTION_EXT_SCOPE): Define. + * d-tree.h (d_builtin_function_ext_scope): Declare. + +2021-07-28 Iain Buclaw + + PR d/101619 + * dmd/MERGE: Merge upstream dmd 1d8386a63. + 2021-07-03 Iain Buclaw PR d/101273 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index af9f6b5d033..c757bf0ff74 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,16 @@ +2021-07-28 Harald Anlauf + + PR fortran/101564 + * expr.c (gfc_check_vardef_context): Add check for KIND and LEN + parameter inquiries. + * match.c (gfc_match): Fix comment for %v code. + (gfc_match_allocate, gfc_match_deallocate): Replace use of %v code + by %e in gfc_match to allow for function references as STAT and + ERRMSG arguments. + * resolve.c (resolve_allocate_deallocate): Avoid NULL pointer + dereferences and shortcut for bad STAT and ERRMSG argument to + (DE)ALLOCATE. Remove bogus parts of checks for STAT and ERRMSG. + 2021-07-26 José Rui Faustino de Sousa Tobias Burnus diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a9f18a0ad4d..d770de1e069 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,159 @@ +2021-07-28 Martin Sebor + + PR middle-end/101494 + * gcc.dg/uninit-pr101494.c: New test. + +2021-07-28 Martin Sebor + + PR middle-end/101601 + * g++.dg/warn/Warray-bounds-25.C: New test. + * gcc.dg/Warray-bounds-85.c: New test. + +2021-07-28 Michael Meissner + + PR testsuite/100168 + * gcc.dg/pr56727-2.c: Add support for PC-relative calls. + +2021-07-28 David Malcolm + + * gcc.dg/analyzer/torture/ubsan-1.c: New test. + +2021-07-28 Harald Anlauf + + PR fortran/101564 + * gfortran.dg/allocate_stat_3.f90: New test. + * gfortran.dg/allocate_stat.f90: Adjust error messages. + * gfortran.dg/implicit_11.f90: Likewise. + * gfortran.dg/inquiry_type_ref_3.f90: Likewise. + +2021-07-28 Jakub Jelinek + + PR middle-end/101624 + * gfortran.dg/ubsan/ubsan.exp: New file. + * gfortran.dg/ubsan/pr101624.f90: New test. + +2021-07-28 Jakub Jelinek + + PR middle-end/101642 + * gcc.c-torture/compile/pr101642.c: New test. + +2021-07-28 Ilya Leoshkevich + + * gcc.target/s390/global-array-element-pic2.c: Add -mzarch, add + an expectation for 31-bit mode. + * gcc.target/s390/load-imm64-1.c: Use unsigned long long. + * gcc.target/s390/load-imm64-2.c: Likewise. + * gcc.target/s390/vector/long-double-vx-macro-off-on.c: Use + -mzarch. + * gcc.target/s390/vector/long-double-vx-macro-on-off.c: + Likewise. + +2021-07-28 Richard Biener + + PR tree-optimization/101615 + * gcc.dg/vect/bb-slp-pr101615-2.c: New testcase. + +2021-07-28 Kyrylo Tkachov + + * gcc.target/aarch64/smov_1.c: New test. + * gcc.target/aarch64/sve/clastb_4.c: Adjust clast scan-assembler. + +2021-07-28 H.J. Lu + + PR target/101456 + * gcc.target/i386/pr101456-1.c: New test. + * gcc.target/i386/pr101456-2.c: Likewise. + +2021-07-28 Richard Biener + + PR tree-optimization/101615 + * gcc.dg/vect/bb-slp-pr101615-1.c: New testcase. + +2021-07-28 Siddhesh Poyarekar + + * gcc.dg/analyzer/strdup-1.c (test_4, test_5, test_6): New + tests. + +2021-07-28 Siddhesh Poyarekar + + * gcc.dg/analyzer/attr-malloc-1.c (compatible_alloc, + compatible_alloc2): New extern allocator declarations. + (test_9, test_10): New tests. + +2021-07-28 Iain Buclaw + + PR d/101640 + * gdc.dg/pr96429.d: Update test. + * gdc.dg/pr101640.d: New test. + +2021-07-28 Iain Buclaw + + PR d/101490 + * gdc.dg/pr101490.d: New test. + +2021-07-28 Iain Buclaw + + PR d/101127 + * gdc.dg/pr101127a.d: New test. + * gdc.dg/pr101127b.d: New test. + +2021-07-28 Jakub Jelinek + + PR target/101611 + * gcc.target/i386/avx2-pr101611-1.c: New test. + * gcc.target/i386/avx2-pr101611-2.c: New test. + +2021-07-28 Martin Uecker + + * gcc.dg/Wnonnull-4.c: Correct argument numbers in warnings. + +2021-07-28 Sandra Loosemore + + PR libfortran/101317 + * gfortran.dg/ISO_Fortran_binding_17.f90: Fix typo in error + message patterns. + +2021-07-28 Sandra Loosemore + + PR libfortran/101310 + * gfortran.dg/ISO_Fortran_binding_1.c (section_c): Remove + incorrect assertions. + +2021-07-28 Sandra Loosemore + + PR libfortran/101305 + * gfortran.dg/ISO_Fortran_binding_1.c: Adjust include path. + * gfortran.dg/ISO_Fortran_binding_10.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_11.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_12.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_15.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_16.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_17.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_18.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_3.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_5.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_6.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_7.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_8.c: Likewise. + * gfortran.dg/ISO_Fortran_binding_9.c: Likewise. + * gfortran.dg/PR94327.c: Likewise. + * gfortran.dg/PR94331.c: Likewise. + * gfortran.dg/bind_c_array_params_3_aux.c: Likewise. + * gfortran.dg/iso_fortran_binding_uint8_array_driver.c: Likewise. + * gfortran.dg/pr93524.c: Likewise. + +2021-07-28 Kewen Lin + + PR tree-optimization/101596 + * gcc.target/powerpc/pr101596-1.c: New test. + * gcc.target/powerpc/pr101596-2.c: Likewise. + * gcc.target/powerpc/pr101596-3.c: Likewise. + +2021-07-28 liuhongt + + PR target/99881 + * gcc.target/i386/pr99881.c: New test. + 2021-07-27 Martin Sebor PR tree-optimization/101584 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index f67f1258fc3..43743142443 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,46 @@ +2021-07-28 Sandra Loosemore + + PR libfortran/101317 + * runtime/ISO_Fortran_binding.c: Include . + (CFI_address): Tidy error messages and comments. + (CFI_allocate): Likewise. + (CFI_deallocate): Likewise. + (CFI_establish): Likewise. Add new checks for validity of + elem_len when it's used, plus type argument and extents. + (CFI_is_contiguous): Tidy error messages and comments. + (CFI_section): Likewise. Refactor some repetitive code to + make it more understandable. + (CFI_select_part): Likewise. + (CFI_setpointer): Likewise. Check that source is not an + unallocated allocatable array or an assumed-size array. + +2021-07-28 Sandra Loosemore + + PR libfortran/101310 + * runtime/ISO_Fortran_binding.c (CFI_section): Fix the base + address computation and simplify the code. + +2021-07-28 Sandra Loosemore + + PR libfortran/101305 + * runtime/ISO_Fortran_binding.c (CFI_establish): Special-case + CFI_type_cptr and CFI_type_cfunptr. Correct size of long double + on targets where it has kind 10. + +2021-07-28 Sandra Loosemore + Tobias Burnus + + PR libfortran/101305 + * ISO_Fortran_binding.h: Fix hard-coded sizes and split into... + * ISO_Fortran_binding-1-tmpl.h: New file. + * ISO_Fortran_binding-2-tmpl.h: New file. + * ISO_Fortran_binding-3-tmpl.h: New file. + * Makefile.am: Add rule for generating ISO_Fortran_binding.h. + Adjust pathnames to that file. + * Makefile.in: Regenerated. + * mk-kinds-h.sh: New file. + * runtime/ISO_Fortran_binding.c: Fix include path. + 2021-07-26 José Rui Faustino de Sousa Tobias Burnus diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog index f2256d94c60..765b7d4f820 100644 --- a/libsanitizer/ChangeLog +++ b/libsanitizer/ChangeLog @@ -1,3 +1,8 @@ +2021-07-28 Ilya Leoshkevich + + * configure.tgt (s390*-*-linux*): Enable LSan and TSan for + s390x. + 2021-07-20 H.J. Lu * asan/libtool-version: Bump version.