- 09 Oct, 2018 7 commits
-
-
This patch suppresses a spurious warning coming from the GCC backend, on an aggregate that cannot be built in place and for which a temporary variable must be created. If the type of the aggregate is a packed boolean array, the generated code may appear to use an uninitialized value for a component of the array, when in fact the code simply sets a single bit of that array. 2018-10-09 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * exp_aggr.adb (Expand_Array_Aggregate): If it is not possible to build in place an aggregate with component associations, set the Warnings_Off flag on the generated temporary, to prevent spurious warnings from the backend when compiling with the -Wuninitialized gcc flag. gcc/testsuite/ * gnat.dg/warn18.adb: New testcase. From-SVN: r264960
Ed Schonberg committed -
The typedefs for common specializations of std::__cxx11::basic_string do not need to be in the std::__cxx11 namespace. Those typedefs are never used for linkage purposes so don't appear in mangled names, and so don't need to be distinct from the equivalent typedefs for the COW std::basic_string specializations. It is OK for the same typedef to refer to different types in different translation units. Defining them directly in namespace std improves diagnostics that use those typedefs. For example: error: could not convert '1' from 'int' to 'std::__cxx11::string' {aka 'std::__cxx11::basic_string<char>'} will now be printed as: error: could not convert '1' from 'int' to 'std::string' {aka 'std::__cxx11::basic_string<char>'} The precise type is still shown, but the typedef is not obfuscated with the inline namespace. * include/bits/stringfwd.h (string, wstring, u16string, u32string): Define typedefs outside of __cxx11 inline namespace. * python/libstdcxx/v6/printers.py (register_type_printers): Also register printers for typedefs in new location. From-SVN: r264958
Jonathan Wakely committed -
2018-10-09 Richard Biener <rguenther@suse.de> PR tree-optimization/63155 * tree-ssa-structalias.c: Include tree-ssa.h. (get_constraint_for_ssa_var): For undefs return nothing_id. (find_func_aliases): Cleanup PHI handling. From-SVN: r264956
Richard Biener committed -
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 1 commit
-
-
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
-