- 09 Oct, 2018 4 commits
-
-
2018-10-09 Richard Biener <rguenther@suse.de> * tree-vectorizer.c (dump_stmt_cost): Fix cut&paste missing replacements. From-SVN: r264954
Richard Biener committed -
2018-10-09 Martin Liska <mliska@suse.cz> * asan.c (asan_emit_stack_protection): If a stack variable is located in a same file as current function, then emit line info into variable definition string. 2018-10-09 Martin Liska <mliska@suse.cz> * c-c++-common/asan/pr64820.c: Add line number to scanned pattern. * c-c++-common/asan/use-after-return-1.c: Likewise. * g++.dg/asan/function-argument-1.C (main): Likewise. * g++.dg/asan/function-argument-2.C (main): Likewise. * g++.dg/asan/function-argument-3.C (main): Likewise. * g++.dg/asan/use-after-scope-1.C (main): Likewise. * g++.dg/asan/use-after-scope-2.C (main): Likewise. * g++.dg/asan/use-after-scope-types-1.C (main): Likewise. * g++.dg/asan/use-after-scope-types-2.C (main): Likewise. * g++.dg/asan/use-after-scope-types-3.C (main): Likewise. * g++.dg/asan/use-after-scope-types-4.C (main): Likewise. * g++.dg/asan/use-after-scope-types-5.C (main): Likewise. * gcc.dg/asan/pr78541.c (main): Likewise. * gcc.dg/asan/use-after-scope-1.c (main): Likewise. * gcc.dg/asan/use-after-scope-10.c (main): Likewise. * gcc.dg/asan/use-after-scope-2.c (main): Likewise. * gcc.dg/asan/use-after-scope-3.c (main): Likewise. * gcc.dg/asan/use-after-scope-5.c (main): Likewise. * gcc.dg/asan/use-after-scope-9.c (main): Likewise. From-SVN: r264951
Martin Liska committed -
2018-10-09 Paul Thomas <pault@gcc.gnu.org> PR fortran/87151 * trans-array.c (gfc_get_array_span): Deal with deferred char array components having a TYPE_MAX_VALUE of zero. (gfc_array_init_size): Use the hidden string length component to build the descriptor dtype. (gfc_array_allocate): Remove the erroneous replacement of the charlen backend decl with a temporary. (gfc_conv_expr_descriptor): Use the ss_info string length in the case of deferred character components. (gfc_alloc_allocatable_for_assignment): Actually compare the string lengths for deferred characters. Make sure that kind > 1 is handled correctly. Set the span field of the descriptor. * trans-intrinsic.c (gfc_conv_intrinsic_len): Remove the stupid comment. PR fortran/80931 * trans-array.c (gfc_array_allocate): Set the span field for variable length character arrays. 2018-10-09 Paul Thomas <pault@gcc.gnu.org> PR fortran/87151 * gfortran.dg/deferred_type_component_3.f90: New test. PR fortran/80931 * gfortran.dg/deferred_character_28.f90: New test. * gfortran.dg/deferred_character_29.f90: New test (note that this test appears in PR83196 comment #4 by mistake). From-SVN: r264949
Paul Thomas committed -
From-SVN: r264948
GCC Administrator committed
-
- 08 Oct, 2018 25 commits
-
-
* print-rtl.c (rtx_writer::print_rtx_operand_code_i): Print column information. From-SVN: r264944
Eric Botcazou committed -
* cgraphunit.c (cgraph_node::expand_thunk): Do not force DECL_IGNORED_P on the thunk. From-SVN: r264943
Eric Botcazou committed -
PR tree-optimization/86659 * gimple-match.h (struct gimple_match_op): Add reverse field. (gimple_match_op::set_op): New overloaded method. * gimple-match-head.c (maybe_build_generic_op) <BIT_FIELD_REF>: Set the REF_REVERSE_STORAGE_ORDER flag on the value. (gimple_simplify) <GIMPLE_ASSIGN>: For BIT_FIELD_REF, propagate the REF_REVERSE_STORAGE_ORDER flag and avoid simplifying if it is set. From-SVN: r264942
Eric Botcazou committed -
As pointed out by Richard in PR63155. It speeds up the testcase a few %. 2018-10-08 Richard Sandiford <richard.sandiford@arm.com> gcc/ PR middle-end/63155 * gimple-ssa-backprop.c (backprop::intersect_uses): Use FOR_EACH_IMM_USE_FAST instead of FOR_EACH_IMM_USE_STMT. From-SVN: r264941
Richard Sandiford committed -
From-SVN: r264939
Paul Koning committed -
Define _mm512_mask3_fmaddsub_round_pd with __builtin_ia32_vfmaddsubpd512_mask, instead of __builtin_ia32_vfmaddpd512_mask. PR target/87517 * config/i386/avx512fintrin.h (_mm512_mask_fmaddsub_round_pd): Defined with __builtin_ia32_vfmaddsubpd512_mask. From-SVN: r264935
H.J. Lu committed -
2018-10-08 Richard Biener <rguenther@suse.de> * config/i386/x86-tune-costs.h (znver1_cost): Make AVX256 vector loads cost the same as AVX128 ones. From-SVN: r264934
Richard Biener committed -
Reviewed-on: https://go-review.googlesource.com/c/140277 From-SVN: r264932
Ian Lance Taylor committed -
* config/pdp11/pdp11-protos.h (output_block_move): Remove. (expand_block_move): New function. * config/pdp11/pdp11.c (output_block_move): Remove. (expand_block_move): New function. * config/pdp11/pdp11.h (MOVE_RATIO): New definition. * config/pdp11/pdp11.md (movmemhi): Use expand_block_move. (*movmemhi1): Remove. From-SVN: r264930
Paul Koning committed -
2018-10-08 Martin Liska <mliska@suse.cz> * gcc.target/i386/i386.exp: Move procedures to target-supports.exp. * g++.target/i386/i386.exp: New file. * gcc.target/i386/mv*.C: Move here tests and remove target filter in these tests. From-SVN: r264929
Martin Liska committed -
gcc/fortran/ * expr.c (gfc_check_pointer_assign): Demote "Assignment to contiguous pointer from non-contiguous target" to a warning. gcc/testsuite/ * gfortran.dg/contiguous_4.f90: Adjust. * gfortran.dg/contiguous_4.f90: New test. From-SVN: r264928
Cesar Philippidis committed -
This patch increases the latency of some floating point instructions to better match the real machine's behavior. 2018-10-08 Robin Dapp <rdapp@linux.ibm.com> * config/s390/2827.md: Increase latencies for some FP instructions. From-SVN: r264927
Robin Dapp committed -
2018-10-08 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (vect_compute_single_scalar_iteration_cost): Open a dump scope. * tree-vectorizer.c (dump_stmt_cost): Add cost param and dump it. * tree-vectorizer.h (dump_stmt_cost): Adjust. (add_stmt_cost): Dump return value of the hook. From-SVN: r264923
Richard Biener committed -
PR libstdc++/87538 * testsuite/experimental/functional/87538.cc: New test. From-SVN: r264922
Jonathan Wakely committed -
PR libstdc++/87538 * include/std/functional (_Not_fn::operator()): Check value of __is_nothrow_invocable as well. * testsuite/20_util/function_objects/not_fn/87538.cc: New test. From-SVN: r264921
Jonathan Wakely committed -
2018-10-08 Paul Thomas <pault@gcc.gnu.org> PR fortran/86372 * trans-stmt.c (trans_associate_var): Character associate names with variable string length do not have to be deferred length for the string length to be set, if variable. 2018-10-08 Paul Thomas <pault@gcc.gnu.org> PR fortran/86372 * gfortran.dg/associate_41.f90: New test. From-SVN: r264919
Paul Thomas committed -
* gcc.dg/merge-all-constants-2.c: Require string_merging support. * gnat.dg/string_merge1.adb: Likewise. * gnat.dg/string_merge2.adb: Likewise. From-SVN: r264918
Rainer Orth committed -
* c-c++-common/Wprio-ctor-dtor.c: Require init_priority support. From-SVN: r264917
Rainer Orth committed -
2018-10-08 Martin Liska <mliska@suse.cz> * g++.dg/ext/pr82625.C: Add dg-compile filter. From-SVN: r264916
Martin Liska committed -
2018-10-08 Paul Thomas <pault@gcc.gnu.org> PR fortran/86372 * trans-stmt.c (trans_associate_var): Character associate names with variable string length do not have to be deferred length for the string length to be set, if variable. 2018-10-08 Paul Thomas <pault@gcc.gnu.org> PR fortran/86372 * gfortran.dg/associate_41.f90: New test. From-SVN: r264915
Paul Thomas committed -
/cp 2018-10-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71128 * pt.c (do_decl_instantiation): Per 12.6.8/5, a concept cannot be explicitly instantiated. /testsuite 2018-10-08 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71128 * g++.dg/concepts/pr71128.C: New. From-SVN: r264914
Paolo Carlini committed -
We've traditionally allowed vectors of enums (not sure if that's deliberate) but vector_types_compatible_elements_p checked for INTEGER_TYPE rather than INTEGRAL_TYPE_P. 2018-10-08 Richard Sandiford <richard.sandiford@arm.com> gcc/c-family/ PR c/87286 * c-common.c (vector_types_compatible_elements_p): Use INTEGRAL_TYPE_P instead of checking only for INTEGER_TYPE. gcc/testsuite/ PR c/87286 * gcc.dg/pr87286.c: New test. From-SVN: r264913
Richard Sandiford committed -
2018-10-08 Richard Biener <rguenther@suse.de> PR tree-optimization/63155 * tree-ssa-propagate.c (add_ssa_edge): Do cheap check first. (ssa_propagation_engine::ssa_propagate): Remove redundant bitmap bit clearing. From-SVN: r264912
Richard Biener committed -
2018-10-08 François Dumont <fdumont@gcc.gnu.org> * include/debug/list (list<>::cbegin()): Use C++11 direct initialization. (list<>::cend()): Likewise. (list<>::emplace<>(const_iterator, _Args&&...)): Likewise. (list<>::insert(const_iterator, initializer_list<>)): Likewise. (list<>::insert(const_iterator, size_type, const _Tp&)): Likewise. (list<>::erase(const_iterator, const_iterator)): Ensure consistent iterator comparisons. (list<>::splice(const_iterator, list&&, const_iterator, const_iterator)): Likewise. From-SVN: r264911
François Dumont committed -
From-SVN: r264910
GCC Administrator committed
-
- 07 Oct, 2018 1 commit
-
-
From-SVN: r264906
GCC Administrator committed
-
- 06 Oct, 2018 6 commits
-
-
This patch cleans up a few places where I noticed the code was still using int instead gfc_charlen_type for string lengths. Regtested on x86_64-pc-linux-gnu, committed as obvious. libgfortran/ChangeLog: 2018-10-06 Janne Blomqvist <jb@gcc.gnu.org> * io/unix.c (compare_file_filename): Use gfc_charlen_type instead of int for string length. (inquire_sequential): Likewise. (inquire_direct): Likewise. (inquire_formatted): Likewise. (inquire_unformatted): Likewise. (inquire_access): Likewise. (inquire_read): Likewise. (inquire_write): Likewise. (inquire_readwrite): Likewise. * io/unix.h (compare_file_filename): Likewise. (inquire_sequential): Likewise. (inquire_direct): Likewise. (inquire_formatted): Likewise. (inquire_unformatted): Likewise. (inquire_read): Likewise. (inquire_write): Likewise. (inquire_readwrite): Likewise. From-SVN: r264901
Janne Blomqvist committed -
2018-10-06 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/86111 * gfortran.h (enum arith): Add ARITH_WRONGCONCAT. * arith.h (gfc_arith_error): Issue error for ARITH_WRONGCONCAT. (gfc_arith_concat): If the types of op1 and op2 are not character of if their kinds do not match, issue ARITH_WRONGCONCAT. 2018-10-06 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/86111 * gfortran.dg/array_constructor_type_23.f90: New test. From-SVN: r264900
Thomas Koenig committed -
2018-10-06 Paul Thomas <pault@gcc.gnu.org> PR fortran/83999 * resolve.c (resolve_fl_procedure): Include class functions in the test that elemental function results be scalar. 2018-10-06 Paul Thomas <pault@gcc.gnu.org> PR fortran/83999 * gfortran.dg/elemental_function_4.f90 : New test. From-SVN: r264899
Paul Thomas committed -
re PR fortran/84640 (gcc/fortran/simplify.c:2587:9: runtime error: pointer index expression with base 0x0000090de160 overflowed to 0xffffffffc0632960) 2018-10-06 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/84640 * simplify.c (gfc_simplify_cshift): Extend size of hs_ex and ss_ex by one. Set extents one past the array boundaries to zero to avoid warning with instrumented compiler. (gfc_simplify_eoshift): Likewise, only for ss_ex. From-SVN: r264898
Thomas Koenig committed -
re PR rtl-optimization/86939 (IRA incorrectly creates an interference between a pseudo register and a hard register) gcc/ PR rtl-optimization/86939 PR rtl-optimization/87479 * ira.h (non_conflicting_reg_copy_p): New prototype. * ira-lives.c (ignore_reg_for_conflicts): New static variable. (make_hard_regno_dead): Don't add conflicts for register ignore_reg_for_conflicts. (make_object_dead): Likewise. (non_conflicting_reg_copy_p): New function. (process_bb_node_lives): Set ignore_reg_for_conflicts for copies. Remove special conflict handling of REAL_PIC_OFFSET_TABLE_REGNUM. * lra-lives.c (ignore_reg_for_conflicts): New static variable. (make_hard_regno_dead): Don't add conflicts for register ignore_reg_for_conflicts. Remove special conflict handling of REAL_PIC_OFFSET_TABLE_REGNUM. Remove now unused argument check_pic_pseudo_p and update callers. (mark_pseudo_dead): Don't add conflicts for register ignore_reg_for_conflicts. (process_bb_lives): Set ignore_reg_for_conflicts for copies. gcc/testsuite/ PR rtl-optimization/86939 PR rtl-optimization/87479 * gcc.target/powerpc/pr86939.c: New test. * gcc/testsuite/gcc.target/i386/pr49095.c: Fix expected results. From-SVN: r264897
Peter Bergner committed -
From-SVN: r264896
GCC Administrator committed
-
- 05 Oct, 2018 4 commits
-
-
gcc/ * config/riscv/riscv.md (f<quiet_pattern>_quiet<ANYF:mode><X:mode>4): Add define_expand. Add ! HONOR_SNANS check to current pattern. Add new pattern using HONOR_SNANS that emits one extra instruction. Co-Authored-By: Jim Wilson <jimw@sifive.com> From-SVN: r264892
Andrew Waterman committed -
* config/rs6000/rs6000.md (unnamed mfcr scc_comparison_operator patterns): Merge SI and DI patterns to a GPR pattern. (unnamed define_insn and define_split for record form of that): Merge to a single define_insn_and_split pattern. From-SVN: r264889
Segher Boessenkool committed -
2018-10-05 Bernd Edlinger <bernd.edlinger@hotmail.de> * gnat.dg/string_merge1.adb: Fix test expectations. * gnat.dg/string_merge2.adb: Likewise. From-SVN: r264888
Bernd Edlinger committed -
-Wformat in the C++ FE doesn't work as well as it could: (a) it doesn't report precise locations within the string literal, and (b) it doesn't underline arguments for those arguments !CAN_HAVE_LOCATION_P, despite having location wrapper nodes. For example: Wformat-ranges.C:32:10: warning: format '%s' expects argument of type 'char*', but argument 2 has type 'int' [-Wformat=] 32 | printf("hello %s", 42); | ^~~~~~~~~~ (a) is due to not wiring up the langhook for extracting substring locations. This patch uses the one in c-family; it also fixes string literal parsing so that it records string concatenations (needed for extracting substring locations from concatenated strings). (b) is due to the call to maybe_constant_value here: fargs[j] = maybe_constant_value (argarray[j]); within build_over_call. The patch fixes this by building a vec of location_t values when calling check_function_arguments. I attempted to eliminate the maybe_constant_value call here, but it's needed by e.g. check_function_sentinel for detecting NULL, and that code is in "c-family", so it can't simply call into maybe_constant_value (which is in "cp"). With this patch, the output for the above example is improved to: Wformat-ranges.C:32:18: warning: format '%s' expects argument of type 'char*', but argument 2 has type 'int' [-Wformat=] 32 | printf("hello %s", 42); | ~^ ~~ | | | | | int | char* | %d gcc/cp/ChangeLog: PR c++/56856 * call.c (build_over_call): Build a vec of locations of the arguments before the call to maybe_constant_value, and pass to check_function_arguments. * cp-lang.c (LANG_HOOKS_GET_SUBSTRING_LOCATION): Define as c_get_substring_location. * parser.c (cp_parser_string_literal): Capture string concatenation locations. gcc/ChangeLog: PR c++/56856 * input.c (expand_location_to_spelling_point): Add param "aspect" and use rather than hardcoding LOCATION_ASPECT_CARET. (get_substring_ranges_for_loc): Handle the case of a single token within a macro expansion. * input.h (expand_location_to_spelling_point): Add "aspect" param, defaulting to LOCATION_ASPECT_CARET. gcc/testsuite/ChangeLog: PR c++/56856 * g++.dg/ext/builtin4.C: Set expected location for warning to the correct location within the format string. * g++.dg/plugin/plugin.exp (plugin_test_list): Add the plugin and files for testing locations within string literal locations from the C frontend. * g++.dg/warn/Wformat-method.C: New test. * g++.dg/warn/Wformat-pr71863.C: New test. * g++.dg/warn/Wformat-ranges-c++11.C: New test. * g++.dg/warn/Wformat-ranges.C: New test, based on gcc.dg/format/diagnostic-ranges.c. * gcc.dg/plugin/diagnostic-test-string-literals-1.c (test_multitoken_macro): Generalize expected output to work with both C and C++. * gcc.dg/plugin/diagnostic-test-string-literals-2.c (test_stringified_token_1): Likewise. (test_stringified_token_3): Likewise. From-SVN: r264887
David Malcolm committed
-