- 17 Sep, 2018 10 commits
-
-
2018-09-17 Paul Thomas <pault@gcc.gnu.org> PR fortran/64120 * trans-decl.c (gfc_get_symbol_decl): Flag allocatable, scalar characters with a variable length expression for deferred init. (gfc_trans_deferred_vars): Perform the assignment for these symbols by calling gfc_conv_string_length. 2018-09-17 Paul Thomas <pault@gcc.gnu.org> PR fortran/64120 * gfortran.dg/allocatable_scalar_14.f90 : New test. From-SVN: r264365
Paul Thomas committed -
re PR tree-optimization/87301 (ICE: verify_gimple failed (error: statement marked for throw, but doesn't)) 2018-09-17 Richard Biener <rguenther@suse.de> PR tree-optimization/87301 * tree-ssa-sccvn.c (eliminate_dom_walker::eliminate_cleanup): Properly clean EH info from leftover copy assignments. * gcc.dg/torture/pr87301.c: New testcase. From-SVN: r264364
Richard Biener committed -
2018-09-17 Martin Liska <mliska@suse.cz> PR gcov-profile/85871 * gcov.c (output_intermediate_file): Fix out of bounds access. From-SVN: r264363
Martin Liska committed -
2018-09-17 Vineet Gupta <vgupta@synopsys.com> * config/arc/arc.c: Object attributes for core4 not reflected correctly. * config/arc/arc.h: Don't restrict DBNZ to core3 (core4 includes core3). From-SVN: r264362
Vineet Gupta committed -
With no trailing space in LINK_EH_SPEC linker spec gets generated as: ------------------------>8--------------------- %{!r:--build-id} --eh-frame-hdr%{h*} ... ------------------------>8--------------------- or even worse if hash style is added: ------------------------>8--------------------- %{!r:--build-id} --eh-frame-hdr--hash-style=sysv %{h*} ... ------------------------>8--------------------- Now if that spec is really used by LD then it fails inevitably saying that it doesn't know option "--eh-frame-hdr--hash-style=sysv". 2018-09-17 Alexey Brodkin <abrodkin@synopsys.com> * config/arc/linux.h (LINK_EH_SPEC): Add missing space. From-SVN: r264361
Alexey Brodkin committed -
2018-09-17 Martin Liska <mliska@suse.cz> * doc/gcov.texi: Document new option --use-hotness-colors. * gcov.c (struct source_info): Declare new field. (source_info::source_info): Set default for maximum_count. (print_usage): Add new -q option. (process_args): Process it. (accumulate_line_info): Save src->maximum_count. (output_line_beginning): Make color line number if flag_use_hotness_colors is set. (output_line_details): Pass default argument value. (output_lines): Pass src->maximum_count. From-SVN: r264360
Martin Liska committed -
2018-09-17 Martin Liska <mliska@suse.cz> * common/config/i386/i386-common.c (ix86_get_valid_option_values): Use processor_names table. * config/i386/i386.c (ix86_default_align): Use processor_cost_table for alignment values. (ix86_option_override_internal): Use processor_names. (ix86_function_specific_print): Likewise. * config/i386/i386.h (struct processor_costs): Add alignment values. (struct ptt): Remove and replace with const char *. * config/i386/x86-tune-costs.h (struct processor_costs): Declare default alignments for all costs. From-SVN: r264359
Martin Liska committed -
2018-09-17 Paul Thomas <pault@gcc.gnu.org> PR fortran/85954 * resolve.c (resolve_assoc_var): If the target expression is a deferred charlen dummy and the associate name shares the charlen, generate a new one. Make sure that new charlens are in the namespace list so that they get cleaned up. * trans-array.c (gfc_is_reallocatable_lhs): Associate names are not reallocatable. * trans-decl.c (gfc_get_symbol_decl): Put deferred character length dummy and result arrays on the deferred initialization list so that the variable length arrays can be correctly dealt with. * trans-expr.c (gfc_conv_string_length): Return if 'expr' is NULL rather than ICEing.. 2018-09-17 Paul Thomas <pault@gcc.gnu.org> PR fortran/85954 * gfortran.dg/deferred_character_21.f90 : New test. From-SVN: r264358
Paul Thomas committed -
tree-vrp.c (extract_range_from_unary_expr): Do not special case symbolics or VR_VARYING ranges for ABS_EXPR. * tree-vrp.c (extract_range_from_unary_expr): Do not special case symbolics or VR_VARYING ranges for ABS_EXPR. * wide-int-range.cc (wide_int_range_abs): Return positive numbers when range will wrap. From-SVN: r264356
Aldy Hernandez committed -
From-SVN: r264355
GCC Administrator committed
-
- 16 Sep, 2018 3 commits
-
-
2018-09-16 Janus Weil <janus@gcc.gnu.org> PR fortran/86484 PR fortran/84543 * match.c (gfc_match_assignment): For a polymorphic assignment, make sure that the vtab for the rhs type is generated. 2018-09-16 Janus Weil <janus@gcc.gnu.org> PR fortran/86484 PR fortran/84543 * gfortran.dg/class_assign_2.f90: New test case. * gfortran.dg/class_assign_3.f90: New test case. From-SVN: r264350
Janus Weil committed -
2018-09-16 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/37802 * frontend-passes.c (B_ERROR): New macro for matmul bounds checking error messages. (C_ERROR): Likewise. (inline_matmul_assign): Reorganize bounds checking, use B_ERROR and C_ERROR macros. 2018-09-16 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/37802 * gfortran.dg/matmul_bounds_13.f90: New test case. * gfortran.dg/inline_matmul_15.f90: Adjust test for runtime error. * gfortran.dg/matmul_5.f90: Likewise. * gfortran.dg/matmul_bounds_10.f90: Likewise. * gfortran.dg/matmul_bounds_11.f90: Likewise. * gfortran.dg/matmul_bounds_2.f90: Likewise. * gfortran.dg/matmul_bounds_4.f90: Likewise. * gfortran.dg/matmul_bounds_5.f90: Likewise. 2018-09-16 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/37802 * m4/matmul_internal.m4: Adjust error messages. * generated/matmul_c10.c: Regenerated. * generated/matmul_c16.c: Regenerated. * generated/matmul_c4.c: Regenerated. * generated/matmul_c8.c: Regenerated. * generated/matmul_i1.c: Regenerated. * generated/matmul_i16.c: Regenerated. * generated/matmul_i2.c: Regenerated. * generated/matmul_i4.c: Regenerated. * generated/matmul_i8.c: Regenerated. * generated/matmul_r10.c: Regenerated. * generated/matmul_r16.c: Regenerated. * generated/matmul_r4.c: Regenerated. * generated/matmul_r8.c: Regenerated. * generated/matmulavx128_c10.c: Regenerated. * generated/matmulavx128_c16.c: Regenerated. * generated/matmulavx128_c4.c: Regenerated. * generated/matmulavx128_c8.c: Regenerated. * generated/matmulavx128_i1.c: Regenerated. * generated/matmulavx128_i16.c: Regenerated. * generated/matmulavx128_i2.c: Regenerated. * generated/matmulavx128_i4.c: Regenerated. * generated/matmulavx128_i8.c: Regenerated. * generated/matmulavx128_r10.c: Regenerated. * generated/matmulavx128_r16.c: Regenerated. * generated/matmulavx128_r4.c: Regenerated. * generated/matmulavx128_r8.c: Regenerated. From-SVN: r264349
Thomas Koenig committed -
From-SVN: r264346
GCC Administrator committed
-
- 15 Sep, 2018 2 commits
-
-
PR middle-end/86864 * cfgexpand.c (expand_gimple_basic_block): Be prepared for a BARRIER before and after a JUMP_TABLE_DATA. From-SVN: r264342
Eric Botcazou committed -
From-SVN: r264341
GCC Administrator committed
-
- 14 Sep, 2018 25 commits
-
-
PR middle-end/87188 * dojump.c (do_compare_and_jump): Canonicalize function pointers when one operand is a function pointer. Use POINTER_TYPE_P and FUNC_OR_METHOD_TYPE_P. * expr.c (do_store_flag): Use POINTER_TYPE_P and FUNC_OR_METHOD_TYPE_P. * fold-const.c (build_range_check): Likewise. * match.pd (simple_comparison): Likewise. From-SVN: r264336
John David Anglin committed -
This patch tunes class best_match's cutoff for rejecting meaningless spelling suggestions. Previously, we allowed an edit distance of up to half of the length of the longer of the goal string and closest candidate strings, rounded down. With this patch, we now allow only up to a third - with some tuning of rounding (and for very short strings), to ensure that: (a) everything that worked before still works (with the removal of a couple of cases that shouldn't), and that (b) the new threshold is always at least as conservative as the old threshold and thus shouldn't offer new nonsensical suggestions (with the possible exception of cases where transposition has helped; see r261521 aka Damerau-Levenshtein; PR other/69968). In particular, all of the bogus suggestions from PR c/82967 are now no longer offered. gcc/ChangeLog: PR c/82967 * spellcheck.c (get_edit_distance_cutoff): New function. (selftest::test_edit_distance_unit_test_oneway): Rename to... (selftest::test_get_edit_distance_one_way): ...this. (selftest::test_get_edit_distance_unit): Rename to... (selftest::test_get_edit_distance_both_ways): ...this. (selftest::test_edit_distances): Move tests to this new function, and test some more pairs of strings. Update for above renaming. (selftest::get_old_cutoff): New function. (selftest::test_get_edit_distance_cutoff): New function. (selftest::assert_suggested_for): New function. (ASSERT_SUGGESTED_FOR): New macro. (selftest::assert_not_suggested_for): New function. (ASSERT_NOT_SUGGESTED_FOR): New macro. (selftest::test_suggestions): New function. (selftest::spellcheck_c_tests): Move test_get_edit_distance_unit tests to selftest::test_edit_distances and call it. Add calls to selftest::test_get_edit_distance_cutoff and selftest::test_suggestions. * spellcheck.h (get_edit_distance_cutoff): New function declaration. (best_match::consider): Replace hard-coded cutoff calculation with a call to... (best_match::get_cutoff): New declaration. (best_match::get_best_meaningful_candidate): Likewise. gcc/testsuite/ChangeLog: PR c/82967 * c-c++-common/attributes-1.c: Remove bogus suggestion from dg-prune-output. * gcc.dg/diagnostic-token-ranges.c (undeclared_identifier): Remove bogus suggestion. * gcc.dg/spellcheck-identifiers-4.c: New test. From-SVN: r264335
David Malcolm committed -
2018-09-14 Bernd Edlinger <bernd.edlinger@hotmail.de> * builtins.c (fold_builtin_strlen): Remove TODO comment. testsuite: 2018-09-14 Bernd Edlinger <bernd.edlinger@hotmail.de> * gcc.dg/warn-strlen-no-nul.c: Add some missing test cases. From-SVN: r264334
Bernd Edlinger committed -
From-SVN: r264333
Bernd Edlinger committed -
revert: 2018-07-30 Bernd Edlinger <bernd.edlinger@hotmail.de> * tree-ssa-forwprop.c (simplify_builtin_call): Don't create a not NUL terminated string literal. From-SVN: r264332
Bernd Edlinger committed -
Bring in https://golang.org/cl/135297 from the gc repository to fix a GCC bug report. Original CL description: The GNU assembler for ARM treats @ as a comment character, so section types must be written using % instead. Fixes https://gcc.gnu.org/PR87260. Reviewed-on: https://go-review.googlesource.com/135360 From-SVN: r264330
Ian Lance Taylor committed -
* builtins.c (unterminated_array): Handle ARRAY_REF. (expand_builtin_stpcpy_1): Detect unterminated char arrays. * builtins.h (unterminated_array): Declare extern. * gimple-fold.c (gimple_fold_builtin_stpcpy): Detect unterminated arrays. (gimple_fold_builtin_sprintf): Propagate NO_WARNING to transformed calls. * gcc.dg/warn-stpcpy-no-nul.c: New test. From-SVN: r264328
Martin Sebor committed -
* builtins.c (unterminated_array): New. (expand_builtin_strcpy): Adjust. (expand_builtin_strcpy_args): Detect unterminated arrays. * gimple-fold.c (get_maxval_strlen): Add argument. Detect unterminated arrays. * gimple-fold.h (get_maxval_strlen): Add argument. (gimple_fold_builtin_strcpy): Detec unterminated arrays. * gimple-fold.c (get_range_strlen): Add argument. (get_maxval_strlen): Adjust. * gimple-fold.h (get_range_strlen): Add argument. * gcc.dg/warn-strcpy-no-nul.c: New test. Co-Authored-By: Jeff Law <law@redhat.com> From-SVN: r264327
Martin Sebor committed -
From-SVN: r264326
Wei Xiao committed -
This CL corrects the handling of a deferred delete in a loop, to not use a temporary whose value will, at deferred execution time, wind up being the last value in the loop. The test for this is TestDeferDeleteSlow in the 1.11 runtime package. Reviewed-on: https://go-review.googlesource.com/135358 From-SVN: r264325
Ian Lance Taylor committed -
gcc/testsuite/ChangeLog: * g++.dg/pr61941.C: New test. From-SVN: r264324
Martin Sebor committed -
This test started failing because some of the functions in the combine dump that it scans uses a different pattern to match the same instruction: insv_regsi rather than aarch64_bfi. The code generation is still the same. The patch changes the scan to look for the actual instruction we want in the assembly. This fixes the test. Committing to trunk as obvious. * gcc.target/aarch64/combine_bfi_1.c: Scan for bfi instruction rather than pattern name in combine dump. From-SVN: r264323
Kyrylo Tkachov committed -
* reg-stack.c: Include regs.h. (replace_reg): Assert that mode is MODE_FLOAT or MODE_COMPLEX_FLOAT. (emit_pop_insn): Default pop insn mode to the reg_raw_mode of FIRST_STACK_REG, not DFmode. (emit_swap_insn): Default swap insn mode to the reg_raw_mode of FIRST_STACK_REG, not XFmode. Explicitly construct swap RTX. (change stack): Default register mode to the reg_raw_mode of FIRST_STACK_REG, not DFmode. * config/i386/i386.md (*swap<mode>): Remove insn pattern. (*swapxf): Rename from swapxf. From-SVN: r264319
Uros Bizjak committed -
gcc/ChangeLog: 2018-09-14 Carl Love <cel@us.ibm.com> * config/rs6000/emmintrin.h: Add _MM_SHUFFLE2. * config/rs6000/xmmintrin.h: Add _MM_SHUFFLE. From-SVN: r264317
Carl Love committed -
This is another case where we ICE because Y does not allow reg+reg, we need Z for that. PR target/87224 * config/rs6000/rs6000.md (*mov<mode>_hardfloat64): Add Z to the Y alternatives. From-SVN: r264316
Segher Boessenkool committed -
gcc/ 2018-07-31 Sam Tebbs <sam.tebbs@arm.com> PR target/85628 * config/aarch64/aarch64.md (*aarch64_bfxilsi_uxtw): Define. gcc/testsuite 2018-07-31 Sam Tebbs <sam.tebbs@arm.com> PR target/85628 * gcc.target/aarch64/combine_bfxil.c (combine_zero_extended_int, foo6): New functions. From-SVN: r264315
Sam Tebbs committed -
* hash-table.c (hash_table_usage): Change from variable to function. * hash-table.h: Adjust. * Makefile.in: Add missing dependencies on hash-table.h. From-SVN: r264313
Jason Merrill committed -
[tree-ssa-mathopts] PR tree-optimization/87259: Call execute_cse_reciprocals_1 before trying optimize_recip_sqrt PR tree-optimization/87259 PR lto/87283 (pass_cse_reciprocals::execute): Run optimize_recip_sqrt after execute_cse_reciprocals_1 has tried transforming. PR tree-optimization/87259 * gcc.dg/pr87259.c: New test. From-SVN: r264312
Kyrylo Tkachov committed -
* tree-vrp.c (extract_range_from_binary_expr_1): Normalize VR_VARYING for PLUS/MINUS_EXPR. From-SVN: r264307
Aldy Hernandez committed -
S/390: Improve s390-passes.def formatting The result looks nicer in the generated pass-instances.def. gcc/ChangeLog: 2018-09-14 Ilya Leoshkevich <iii@linux.ibm.com> * config/s390/s390-passes.def (INSERT_PASS_BEFORE): Improve formatting. From-SVN: r264306
Ilya Leoshkevich committed -
I've been tracking down a bug in a Fortran program on a newlib target and it boils down to fallback_access doing something bad. The unconditional calls to close cause havoc when open doesn't get called due to the short-circuiting in the if-statement above because the fd is uninitialised. In my environment GCC ends up calling close on file descriptor 0, thus trying to close stdin. This patch tightens up the calling so that close is called only when the corresponding open call succeeded. With this my runtime failure disappears. Bootstrapped and tested on aarch64-none-linux-gnu. Though that doesn't exercise this call I hope it's an obviously correct change. * io/unix.c (fallback_access): Avoid calling close on uninitialized file descriptor. From-SVN: r264305
Kyrylo Tkachov committed -
2018-09-14 Richard Biener <rguenther@suse.de> PR middle-end/63155 * tree-ssa-coalesce.c (ssa_conflicts_merge): Remove conflict bits for the merged partition. From-SVN: r264304
Richard Biener committed -
* builtins.h (c_srlen): Add argument. * builtins.c (warn_string_no_nul): New function. (c_strlen): Add argument and use it. Update recursive calls. Pass DECL argument to string_constant to get info on non terminated strings. Update *NONSTR as needed. (fold_builtin_strlen): Add argument to calls to c_strlen. Warn for unterminated arrays. (warn_string_no_null): Add prototype. * expr.c (string_constant): Update arguments. Update recursive calls appropriately. Detect missing NUL terminator and outermost declaration its missing in. Improve checks for arrays with nonzero lower bound or elements that are not a single byte. Simplify offset computation. Simplify checks for non-NUL terminated strings. * gimple-fold.c (get_range_strlen): Add argument to c_strlen call. * gimple-ssa-sprintf.c (get_string_length): Remove unnecessary code. * gcc.dg/warn-strlen-no-nul.c: New test. Co-Authored-By: Bernd Edlinger <bernd.edlinger@hotmail.de> Co-Authored-By: Jeff Law <law@redhat.com> From-SVN: r264302
Martin Sebor committed -
* builtins.c (c_strlen): Handle not zero terminated STRING_CSTs correctly. * fold-const.c (c_getstr): Fix function comment. Remove unused third argument. Fix range checks. * fold-const.h (c_getstr): Adjust protoype. * gimple-fold.c (gimple_fold_builtin_memory_op): Avoid folding when string is constant but contains no NUL byte. From-SVN: r264301
Bernd Edlinger committed -
* expr.c (string_constant): Adjust function comment. Remove bogus check for zero termination. From-SVN: r264300
Bernd Edlinger committed
-