Skip to content
Snippets Groups Projects
  1. Oct 24, 2018
    • Michael Meissner's avatar
      rs6000.c (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Define as rs6000_mangle_decl_assembler_name. · f78f0462
      Michael Meissner authored
      [gcc]
      2018-10-24  Michael Meissner  <meissner@linux.ibm.com>
      
      	* config/rs6000/rs6000.c (TARGET_MANGLE_DECL_ASSEMBLER_NAME):
      	Define as rs6000_mangle_decl_assembler_name.
      	(rs6000_mangle_decl_assembler_name): If the user switched from IBM
      	long double to IEEE long double, switch the names of the long
      	double built-in functions to be <func>f128 instead of <func>l.
      
      [gcc/testsuite]
      2018-10-24  Michael Meissner  <meissner@linux.ibm.com>
      
      	* gcc.target/powerpc/float128-math.c: New test to make sure the
      	long double built-in function names use the f128 form if the user
      	switched from IBM long double to IEEE long double.
      	* gcc.target/powerpc/ppc-fortran/ieee128-math.f90: Likewise.
      
      From-SVN: r265471
      f78f0462
    • Jakub Jelinek's avatar
      re PR c++/86288 (Recognize __gnu and/or __gnu__ as attribute-namespace) · df51934d
      Jakub Jelinek authored
      	PR c++/86288
      	* parser.c (cp_parser_std_attribute): Canonicalize attr_ns, and when
      	:: is not present and attr_ns non-NULL, canonicalize also attr_id.
      	(cp_parser_attribute_spec): Fix comment typo.
      
      	* g++.dg/cpp0x/gen-attrs-66.C: New test.
      
      From-SVN: r265470
      df51934d
    • Martin Sebor's avatar
      extend.texi (nonnull): List no-argument form. · a703b16b
      Martin Sebor authored
      gcc/ChangeLog:
      
      	* doc/extend.texi (nonnull): List no-argument form.  Reference
      	-fno-delete-null-pointer-checks and -fisolate-erroneous-paths-attribute.
      
      From-SVN: r265469
      a703b16b
    • Martin Sebor's avatar
      PR c++/84851 - missing -Wclass-memaccess for a memcpy in a copy ctor with a non-trivial member · fd85b888
      Martin Sebor authored
      gcc/cp/ChangeLog:
      
      	PR c++/84851
      	* call.c (maybe_warn_class_memaccess): Tighten up.
      
      gcc/testsuite/ChangeLog:
      
      	PR c++/84851
      	* g++.dg/Wclass-memaccess-4.C: Remove XFAIL.
      
      From-SVN: r265467
      fd85b888
    • Richard Biener's avatar
      tree-ssa-sccvn.c (do_rpo_vn): Free rpo_state. · 313c3991
      Richard Biener authored
      2018-10-24  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (do_rpo_vn): Free rpo_state.
      
      From-SVN: r265465
      313c3991
    • William Schmidt's avatar
      emmintrin.h (_mm_cvtpd_epi32): Change deprecated __vector long to __vector long long. · 28d2dc75
      William Schmidt authored
      2018-10-24  Bill Schmidt  <wschmidt@linux.ibm.com>
      	    Jinsong Ji <jji@us.ibm.com>
      
      	* config/rs6000/emmintrin.h (_mm_cvtpd_epi32): Change deprecated
      	__vector long to __vector long long.
      	(_mm_cvtpd_ps): Likewise.
      	(_mm_cvttpd_epi32): Likewise.
      	(_mm_cvtpi32_pd): Likewise.
      	(_mm_unpackhi_epi64): Likewise.
      	(_mm_unpacklo_epi64): Likewise.
      
      From-SVN: r265464
      28d2dc75
    • Martin Liska's avatar
      Switch conversion: support any ax + b transformation (PR tree-optimization/84436). · 767d4551
      Martin Liska authored
      2018-10-24  Martin Liska  <mliska@suse.cz>
      
      	PR tree-optimization/84436
      	* tree-switch-conversion.c (switch_conversion::contains_same_values_p):
      	Remove.
      	(switch_conversion::contains_linear_function_p): New.
      	(switch_conversion::build_one_array): Support linear
      	transformation on input.
      	* tree-switch-conversion.h (struct switch_conversion): Add
      	contains_linear_function_p declaration.
      2018-10-24  Martin Liska  <mliska@suse.cz>
      
      	PR tree-optimization/84436
      	* gcc.dg/tree-ssa/pr84436-1.c: New test.
      	* gcc.dg/tree-ssa/pr84436-2.c: New test.
      	* gcc.dg/tree-ssa/pr84436-3.c: New test.
      	* gcc.dg/tree-ssa/pr84436-4.c: New test.
      	* gcc.dg/tree-ssa/pr84436-5.c: New test.
      
      From-SVN: r265463
      767d4551
    • Richard Biener's avatar
      Return hash of ADDR_EXPR if its argument is CONSTANT_CLASS_P. · b5d0cdc9
      Richard Biener authored
      2018-10-24  Richard Biener  <rguenther@suse.de>
      
      	* varasm.c (const_hash_1): Return hash of ADDR_EXPR
      	if its argument is CONSTANT_CLASS_P.
      
      From-SVN: r265462
      b5d0cdc9
    • Jan Hubicka's avatar
      ipa-utils.h (type_with_linkage_p): No longer check for TYPE_STUB_DECL; it is... · 9a97772f
      Jan Hubicka authored
      ipa-utils.h (type_with_linkage_p): No longer check for TYPE_STUB_DECL; it is wrong for forward declarations.
      
      	* ipa-utils.h (type_with_linkage_p): No longer check for TYPE_STUB_DECL;
      	it is wrong for forward declarations.
      
      From-SVN: r265460
      9a97772f
    • Ilya Leoshkevich's avatar
      Add myself to MAINTAINERS · 04193ea0
      Ilya Leoshkevich authored
      ChangeLog:
      
      2018-10-24  Ilya Leoshkevich  <iii@linux.ibm.com>
      
      	* MAINTAINERS (Write After Approval): Add myself.
      
      From-SVN: r265459
      04193ea0
    • Ilya Leoshkevich's avatar
      S/390: Fix ICE in s390_check_qrst_address () · 6f7133ec
      Ilya Leoshkevich authored
      In r265371 (S/390: Make "b" constraint match literal pool references)
      the CONSTANT_POOL_ADDRESS_P () check was moved from
      s390_loadrelative_operand_p () to s390_check_qrst_address ().  However,
      in the original code it was guarded by SYMBOL_REF_P (), which was not
      added to the new code.
      
      gcc/ChangeLog:
      
      2018-10-24  Ilya Leoshkevich  <iii@linux.ibm.com>
      
      	* config/s390/s390.c (s390_check_qrst_address): Add the missing
      	SYMBOL_REF_P () check.
      
      gcc/testsuite/ChangeLog:
      
      2018-10-24  Ilya Leoshkevich  <iii@linux.ibm.com>
      
      	* gcc.target/s390/20181024-1.c: New test.
      
      From-SVN: r265458
      6f7133ec
    • Richard Biener's avatar
      re PR tree-optimization/87105 (Autovectorization [X86, SSE2, AVX2, DoublePrecision]) · be43a887
      Richard Biener authored
      2018-10-24  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/87105
      	* tree-vect-data-refs.c (vect_analyze_group_access_1): Adjust
      	dump classification.
      	(vect_analyze_data_ref_accesses): Handle duplicate loads and
      	stores by splitting the affected group after the fact.
      	* tree-vect-slp.c (vect_build_slp_tree_2): Dump when we
      	fail the SLP build because of size constraints.
      
      	* gcc.dg/vect/bb-slp-39.c: New testcase.
      	* gfortran.dg/vect/pr83232.f90: Un-XFAIL.
      
      From-SVN: r265457
      be43a887
    • Rainer Orth's avatar
      Disable string merging with alignment > 1 before Solaris 11.4/SPARC · dc6b6330
      Rainer Orth authored
      	* configure.ac (gcc_cv_ld_aligned_shf_merge): New test.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* varasm.c (mergeable_string_section): Use readonly_data_section
      	if linker doesn't support SHF_MERGE with alignment > 8.
      	(mergeable_constant_section): Likewise.
      
      From-SVN: r265456
      dc6b6330
    • Richard Biener's avatar
      re PR tree-optimization/84013 (wrong __restrict clique with inline asm operand) · 53b8a710
      Richard Biener authored
      2018-10-24  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/84013
      	* tree-ssa-structalias.c (struct msdi_data): New struct for
      	marshalling data to walk_stmt_load_store_ops.
      	(maybe_set_dependence_info): Refactor as callback for
      	walk_stmt_load_store_ops.
      	(compute_dependence_clique): Set restrict info on all stmt kinds.
      
      	* gcc.dg/tree-ssa/restrict-9.c: New testcase.
      
      From-SVN: r265455
      53b8a710
    • Martin Liska's avatar
      Remove reduntant dumps and make tp_first_run dump more compact. · 19b55958
      Martin Liska authored
      2018-10-24  Martin Liska  <mliska@suse.cz>
      
      	* cgraph.c (cgraph_node::dump):
      	Remove reduntant dumps and make tp_first_run dump more compact.
      2018-10-24  Martin Liska  <mliska@suse.cz>
      
      	* libgcov-profiler.c: Start from 1 in order to distinguish
      	functions which were seen and these that were not.
      
      From-SVN: r265454
      19b55958
    • Richard Biener's avatar
      re PR tree-optimization/87665 (gcc HEAD (svn: 265340) breaks elements on resize) · bf329927
      Richard Biener authored
      2018-10-24  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/87665
      	* tree-vect-data-refs.c (vect_preserves_scalar_order_p): Adjust
      	to reflect reality.
      
      	* gcc.dg/torture/pr87665.c: New testcase.
      
      From-SVN: r265452
      bf329927
    • François Dumont's avatar
      2018-10-24 François Dumont <fdumont@gcc.gnu.org> · 4b763dee
      François Dumont authored
      	* include/debug/safe_unordered_container.h
      	(_Safe_unordered_container<>::_M_invalidate_locals): Take lambda
      	parameter type from local end variable.
      	(_Safe_unordered_container<>::_M_invalidate_all): Likewise.
      	* include/debug/unordered_map
      	(unordered_map<>::begin()): Use C++11 direct initialization.
      	(unordered_map<>::end()): Likewise.
      	(unordered_map<>::cbegin()): Likewise.
      	(unordered_map<>::cend()): Likewise.
      	(unordered_map<>::begin(size_type)): Likewise.
      	(unordered_map<>::end(size_type)): Likewise.
      	(unordered_map<>::cbegin(size_type)): Likewise.
      	(unordered_map<>::cend(size_type)): Likewise.
      	(unordered_map<>::emplace<>(_Args&&...)): Likewise.
      	(unordered_map<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
      	(unordered_map<>::insert(const value_type&)): Likewise.
      	(unordered_map<>::insert(value_type&&)): Likewise.
      	(unordered_map<>::insert<>(_Pair&&)): Likewise.
      	(unordered_map<>::insert(const_iterator, const value_type&)): Likewise.
      	(unordered_map<>::insert(const_iterator, value_type&&)): Likewise.
      	(unordered_map<>::insert<>(const_iterator, _Pair&&)): Likewise.
      	(unordered_map<>::try_emplace<>(const key_type&, _Args&&...)): Likewise.
      	(unordered_map<>::try_emplace<>(key_type&&, _Args&&...)): Likewise.
      	(unordered_map<>::try_emplace<>(const_iterator, const key_type&,
      	_Args&&...)): Likewise.
      	(unordered_map<>::try_emplace<>(const_iterator, key_type&&,
      	_Args&&...)): Likewise.
      	(unordered_map<>::insert_or_assign<>(const key_type&, _Obj&&)): Likewise.
      	(unordered_map<>::insert_or_assign<>(key_type&&, _Obj&&)): Likewise.
      	(unordered_map<>::insert_or_assign<>(const_iterator, const key_type&,
      	_Obj&&)): Likewise.
      	(unordered_map<>::insert_or_assign<>(const_iterator, key_type&&,
      	_Obj&&)): Likewise.
      	(unordered_map<>::insert(note_type&&)): Likewise.
      	(unordered_map<>::find(const key_type&)): Likewise.
      	(unordered_map<>::equal_range(const key_type&)): Likewise.
      	(unordered_map<>::_M_extract): New.
      	(unordered_map<>::extract(const_iterator)): Use latter.
      	(unordered_map<>::extract(const key_type&)): Likewise.
      	(unordered_map<>::_M_erase): New.
      	(unordered_map<>::erase(const key_type&)): Use latter.
      	(unordered_map<>::erase(const_iterator)): Likewise.
      	(unordered_map<>::erase(iterator)): Likewise.
      	(unordered_map<>::_M_invalidate): New.
      	(unordered_map<>::erase(const_iterator, const_iterator)): Use latter.
      	(unordered_multimap<>::begin()): Use C++11 direct initialization.
      	(unordered_multimap<>::end()): Likewise.
      	(unordered_multimap<>::cbegin()): Likewise.
      	(unordered_multimap<>::cend()): Likewise.
      	(unordered_multimap<>::begin(size_type)): Likewise.
      	(unordered_multimap<>::end(size_type)): Likewise.
      	(unordered_multimap<>::cbegin(size_type)): Likewise.
      	(unordered_multimap<>::cend(size_type)): Likewise.
      	(unordered_multimap<>::emplace<>(_Args&&...)): Likewise.
      	(unordered_multimap<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
      	(unordered_multimap<>::insert(const value_type&)): Likewise.
      	(unordered_multimap<>::insert(const_iterator, const value_type&)): Likewise.
      	(unordered_multimap<>::insert(const_iterator, value_type&&)): Likewise.
      	(unordered_multimap<>::insert<>(_Pair&&)): Likewise.
      	(unordered_multimap<>::insert<>(const_iterator, _Pair&&)): Likewise.
      	(unordered_multimap<>::insert(note_type&&)): Likewise.
      	(unordered_multimap<>::insert(const_iterator, note_type&&)): Likewise.
      	(unordered_multimap<>::find(const key_type&)): Likewise.
      	(unordered_multimap<>::equal_range(const key_type&)): Likewise.
      	(unordered_multimap<>::_M_extract): New.
      	(unordered_multimap<>::extract(const_iterator)): Use latter.
      	(unordered_multimap<>::extract(const key_type&)): Likewise.
      	(unordered_multimap<>::_M_erase): New.
      	(unordered_multimap<>::erase(const_iterator)): Likewise.
      	(unordered_multimap<>::erase(iterator)): Likewise.
      	(unordered_multimap<>::_M_invalidate): New.
      	(unordered_multimap<>::erase(const key_type&)): Use latter.
      	(unordered_multimap<>::erase(const_iterator, const_iterator)): Likewise.
      	* include/debug/unordered_set
      	(unordered_set<>::begin()): Use C++11 direct initialization.
      	(unordered_set<>::end()): Likewise.
      	(unordered_set<>::cbegin()): Likewise.
      	(unordered_set<>::cend()): Likewise.
      	(unordered_set<>::begin(size_type)): Likewise.
      	(unordered_set<>::end(size_type)): Likewise.
      	(unordered_set<>::cbegin(size_type)): Likewise.
      	(unordered_set<>::cend(size_type)): Likewise.
      	(unordered_set<>::emplace<>(_Args&&...)): Likewise.
      	(unordered_set<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
      	(unordered_set<>::insert(const value_type&)): Likewise.
      	(unordered_set<>::insert(value_type&&)): Likewise.
      	(unordered_set<>::insert(const_iterator, const value_type&)): Likewise.
      	(unordered_set<>::insert(const_iterator, value_type&&)): Likewise.
      	(unordered_set<>::insert(note_type&&)): Likewise.
      	(unordered_set<>::insert(const_iterator, note_type&&)): Likewise.
      	(unordered_set<>::find(const key_type&)): Likewise.
      	(unordered_set<>::equal_range(const key_type&)): Likewise.
      	(unordered_set<>::_M_extract): New.
      	(unordered_set<>::extract(const_iterator)): Use latter.
      	(unordered_set<>::extract(const key_type&)): Likewise.
      	(unordered_set<>::_M_erase): New.
      	(unordered_set<>::erase(const key_type&)): Use latter.
      	(unordered_set<>::erase(const_iterator)): Likewise.
      	(unordered_set<>::erase(iterator)): Likewise.
      	(unordered_set<>::_M_invalidate): New.
      	(unordered_set<>::erase(const_iterator, const_iterator)): Use latter.
      	(unordered_multiset<>::begin()): Use C++11 direct initialization.
      	(unordered_multiset<>::end()): Likewise.
      	(unordered_multiset<>::cbegin()): Likewise.
      	(unordered_multiset<>::cend()): Likewise.
      	(unordered_multiset<>::begin(size_type)): Likewise.
      	(unordered_multiset<>::end(size_type)): Likewise.
      	(unordered_multiset<>::cbegin(size_type)): Likewise.
      	(unordered_multiset<>::cend(size_type)): Likewise.
      	(unordered_multiset<>::emplace<>(_Args&&...)): Likewise.
      	(unordered_multiset<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
      	(unordered_multiset<>::insert(const value_type&)): Likewise.
      	(unordered_multiset<>::insert(const_iterator, const value_type&)): Likewise.
      	(unordered_multiset<>::insert(value_type&&)): Likewise.
      	(unordered_multiset<>::insert(const_iterator, value_type&&)): Likewise.
      	(unordered_multiset<>::insert(node_type&&)): Likewise.
      	(unordered_multiset<>::insert(const_iterator, node_type&&)): Likewise.
      	(unordered_multiset<>::find(const key_type&)): Likewise.
      	(unordered_multiset<>::equal_range(const key_type&)): Likewise.
      	(unordered_multiset<>::_M_extract): New.
      	(unordered_multiset<>::extract(const_iterator)): Use latter.
      	(unordered_multiset<>::extract(const key_type&)): Likewise.
      	(unordered_multiset<>::_M_erase): New.
      	(unordered_multiset<>::erase(const_iterator)): Likewise.
      	(unordered_multiset<>::erase(iterator)): Likewise.
      	(unordered_multiset<>::_M_invalidate): New.
      	(unordered_multiset<>::erase(const key_type&)): Use latter.
      	(unordered_multiset<>::erase(const_iterator, const_iterator)): Likewise.
      
      From-SVN: r265451
      4b763dee
    • François Dumont's avatar
      cstddef: Add versioned namespace. · a01fc83f
      François Dumont authored
      2018-10-24  François Dumont  <fdumont@gcc.gnu.org>
      
      	* include/c_global/cstddef: Add versioned namespace.
      
      From-SVN: r265450
      a01fc83f
    • GCC Administrator's avatar
      Daily bump. · d21dad98
      GCC Administrator authored
      From-SVN: r265448
      d21dad98
  2. Oct 23, 2018
    • Jeff Law's avatar
      h8300.c (h8300_expand_prologue): Fix stm generation for H8/S. · 040e0e44
      Jeff Law authored
      	* config/h8300/h8300.c (h8300_expand_prologue): Fix stm generation
      	for H8/S.
      
      From-SVN: r265444
      040e0e44
    • Iain Buclaw's avatar
      MAINTAINERS (Write After Approval): Remove myself. · 72eda5f2
      Iain Buclaw authored
      2018-10-23  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* MAINTAINERS (Write After Approval): Remove myself.
      
      From-SVN: r265442
      72eda5f2
    • Iain Buclaw's avatar
      MAINTAINERS: Add myself as D front-end and libphobos maintainer. · 4c029cee
      Iain Buclaw authored
      2018-10-23  Iain Buclaw  <ibuclaw@gdcproject.org>
      
      	* MAINTAINERS: Add myself as D front-end and libphobos maintainer.
      
      From-SVN: r265441
      4c029cee
    • Ian Lance Taylor's avatar
      re PR go/87661 (libgo bootstrap failure on arm-linux-gnueabihf (redefinition of constants)) · 8dd2ae4b
      Ian Lance Taylor authored
      	PR go/87661
          runtime: remove unused armArch, hwcap and hardDiv
          
          After CL 140057 these are only written but never read in gccgo.
          
          Reviewed-on: https://go-review.googlesource.com/c/141077
      
      From-SVN: r265439
      8dd2ae4b
    • Jakub Jelinek's avatar
      lambda-this3.C: Limit dg-bogus directives to c++17_down only. · 53aba487
      Jakub Jelinek authored
      	* g++.dg/cpp2a/lambda-this3.C: Limit dg-bogus directives to c++17_down
      	only.  Add expected warnings and messages for c++2a.
      
      From-SVN: r265430
      53aba487
    • Jonathan Wakely's avatar
      PR libstdc++/87704 fix unique_ptr(nullptr_t) constructors · c3ba63c3
      Jonathan Wakely authored
      Using a delegating constructor to implement these constructors means
      that they instantiate the destructor, which requires the element_type to
      be complete. In C++11 and C++14 they were specified to be delegating,
      but that was changed as part of LWG 2801 so in C++17 they don't require
      a complete type (as was intended all along).
      
      	PR libstdc++/87704
      	* include/bits/unique_ptr.h (unique_ptr::unique_ptr(nullptr_t)): Do
      	not delegate to default constructor.
      	(unique_ptr<T[], D>::unique_ptr(nullptr_t)): Likewise.
      	* testsuite/20_util/unique_ptr/cons/incomplete.cc: New test.
      
      From-SVN: r265423
      c3ba63c3
    • Richard Biener's avatar
      tree-vrp.c (add_assert_info): Guard dump_printf with dump_enabled_p. · 99c24b91
      Richard Biener authored
      2018-10-23  Richard Biener  <rguenther@suse.de>
      
      	* tree-vrp.c (add_assert_info): Guard dump_printf with
      	dump_enabled_p.
      	* gimple-ssa-evrp-analyze.c
      	(evrp_range_analyzer::record_ranges_from_incoming_edge):
      	Use value_range::ignore_equivs_equal_p.
      
      From-SVN: r265422
      99c24b91
    • Richard Biener's avatar
      re PR tree-optimization/87105 (Autovectorization [X86, SSE2, AVX2, DoublePrecision]) · 1cab645d
      Richard Biener authored
      2018-10-23  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/87105
      	PR tree-optimization/87608
      	* passes.def (pass_all_early_optimizations): Add early phi-opt
      	after dce.
      	* tree-ssa-phiopt.c (value_replacement): Ignore NOPs and predicts in
      	addition to debug stmts.
      	(tree_ssa_phiopt_worker): Add early_p argument, do only min/max
      	and abs replacement early.
      	* tree-cfg.c (gimple_empty_block_p): Likewise.
      
      	* g++.dg/tree-ssa/phiopt-1.C: New testcase.
      	g++.dg/vect/slp-pr87105.cc: Likewise.
      	* g++.dg/tree-ssa/pr21463.C: Scan phiopt2 because this testcase
      	relies on phiprop run before.
      	* g++.dg/tree-ssa/pr30738.C: Likewise.
      	* g++.dg/tree-ssa/pr57380.C: Likewise.
      	* gcc.dg/tree-ssa/pr84859.c: Likewise.
      	* gcc.dg/tree-ssa/pr45397.c: Scan phiopt2 because phiopt1 is
      	confused by copies in the IL left by EVRP.
      	* gcc.dg/tree-ssa/phi-opt-5.c: Likewise, this time confused
      	by predictors.
      	* gcc.dg/tree-ssa/phi-opt-12.c: Scan phiopt2.
      	* gcc.dg/pr24574.c: Likewise.
      	* g++.dg/tree-ssa/pr86544.C: Scan phiopt4.
      
      From-SVN: r265421
      1cab645d
    • Richard Earnshaw's avatar
      [arm] Update default CPUs during configure · 7a433140
      Richard Earnshaw authored
      There are a couple of places in config.gcc where the default CPU is
      still arm6, but that was removed as a supported CPU earlier this year.
      This patch fixes those entries.
      
      The default CPU for configurations that do not explicitly set a
      default is now arm7tdmi (so assumes thumb is available).  Given that
      StrongArm is on the deprecated list, this is a better default than we
      had previously.
      
      For NetBSD the default is StrongArm; this is the only remaining port
      that uses the old ABI and really still carries support for non-thumb
      based targets.
      
      	PR target/86383
      	* config.gcc (arm*-*-netbsdelf*): Default to StrongARM if no CPU
      	specified to configure.
      	(arm*-*-*): Use ARM7TDMI as the target CPU if no default provided.
      
      From-SVN: r265420
      7a433140
    • Richard Biener's avatar
      re PR tree-optimization/87700 (Compile time hog w/ -O1) · b1a5c719
      Richard Biener authored
      2018-10-23  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/87700
      	* tree-ssa-copy.c (set_copy_of_val): Fix change detection logic.
      
      	* gcc.dg/torture/pr87700.c: New testcase.
      
      From-SVN: r265418
      b1a5c719
    • Jakub Jelinek's avatar
      re PR target/87674 (AVX512: incorrect intrinsic signature) · 20e363e4
      Jakub Jelinek authored
      	PR target/87674
      	* config/i386/avx512vlintrin.h (_mm_mask_mullo_epi32): Change type of
      	second argument from __mmask16 to __mmask8.
      	* config/i386/avx512vlbwintrin.h (_mm_mask_packus_epi32,
      	_mm_mask_packs_epi32): Likewise.
      	* config/i386/avx512pfintrin.h (_mm512_mask_prefetch_i64scatter_ps):
      	Likewise.
      	(_mm512_mask_prefetch_i64scatter_pd): Likewise.  Formatting fix.
      
      From-SVN: r265416
      20e363e4
    • Richard Biener's avatar
      tree-vect-stmts.c (vect_analyze_stmt): Fix typo in comment. · 34873d4c
      Richard Biener authored
      2018-10-23  Richard Biener  <rguenther@suse.de>
      
      	* tree-vect-stmts.c (vect_analyze_stmt): Fix typo in comment.
      
      From-SVN: r265415
      34873d4c
    • Richard Biener's avatar
      re PR tree-optimization/86144 (GCC is not generating vector math calls to svml/acml functions) · bc37759a
      Richard Biener authored
      2018-10-23  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/86144
      	* tree-vect-stmts.c (vect_analyze_stmt): Prefer -mveclibabi
      	over simd attribute.
      
      From-SVN: r265414
      bc37759a
    • Richard Biener's avatar
      re PR tree-optimization/87693 (ICE in thread_around_empty_blocks, at tree-ssa-threadedge.c:984) · a26eaf98
      Richard Biener authored
      2018-10-23  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/87693
      	* tree-ssa-threadedge.c (thread_around_empty_blocks): Handle
      	the case we do not find the taken edge.
      
      	* gcc.dg/torture/pr87693.c: New testcase.
      
      From-SVN: r265413
      a26eaf98
    • Paul Thomas's avatar
      re PR fortran/85603 (ICE with character array substring assignment) · 2efade53
      Paul Thomas authored
      2018-10-23  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/85603
      	* frontend-passes.c (get_len_call): New function to generate a
      	call to intrinsic LEN.
      	(create_var): Use this to make length expressions for variable
      	rhs string lengths.
      	Clean up some white space issues.
      
      2018-10-23  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/85603
      	* gfortran.dg/deferred_character_23.f90 : Check reallocation is
      	occurring as it should and a regression caused by version 1 of
      	this patch.
      
      From-SVN: r265412
      2efade53
    • Ian Lance Taylor's avatar
      compiler: export indexed type data, read unexported types lazily · a847d2b7
      Ian Lance Taylor authored
          
          Introduce a new "types" command to the export data to record the
          number of types and the size of their export data. It is immediately
          followed by new "type" commands that can be indexed. Parse all the
          exported types immediately so that we register them, but parse other
          type data only as needed.
          
          Reviewed-on: https://go-review.googlesource.com/c/143022
      
      From-SVN: r265409
      a847d2b7
    • GCC Administrator's avatar
      Daily bump. · 91f4d9e9
      GCC Administrator authored
      From-SVN: r265408
      91f4d9e9
  3. Oct 22, 2018
    • Paul Koning's avatar
      symtab.c (symtab_node::increase_alignment): Correct max alignment check. · 97580980
      Paul Koning authored
      	* symtab.c (symtab_node::increase_alignment): Correct max
      	alignment check.
      
      From-SVN: r265404
      97580980
    • Yury Gribov's avatar
      re PR tree-optimization/87633 (ice in compare_range_wit h_value, at vr-values.c:1702) · f3842847
      Yury Gribov authored
      2018-10-22  Yury Gribov  <tetra2005@gmail.com>
      
      gcc/
      	PR tree-optimization/87633
      	* match.pd: Do not generate unordered integer comparisons.
      
      gcc/testsuite/
      	PR tree-optimization/87633
      	* g++.dg/pr87633.C: New test.
      
      From-SVN: r265399
      f3842847
    • Segher Boessenkool's avatar
      combine: Do not combine moves from hard registers · 8d2d3958
      Segher Boessenkool authored
      On most targets every function starts with moves from the parameter
      passing (hard) registers into pseudos.  Similarly, after every call
      there is a move from the return register into a pseudo.  These moves
      usually combine with later instructions (leaving pretty much the same
      instruction, just with a hard reg instead of a pseudo).
      
      This isn't a good idea.  Register allocation can get rid of unnecessary
      moves just fine, and moving the parameter passing registers into many
      later instructions tends to prevent good register allocation.  This
      patch disallows combining moves from a hard (non-fixed) register.
      
      This also avoid the problem mentioned in PR87600 #c3 (combining hard
      registers into inline assembler is problematic).
      
      Because the register move can often be combined with other instructions
      *itself*, for example for setting some condition code, this patch adds
      extra copies via new pseudos after every copy-from-hard-reg.
      
      On some targets this reduces average code size.  On others it increases
      it a bit, 0.1% or 0.2% or so.  (I tested this on all *-linux targets).
      
      
      	PR rtl-optimization/87600
      	* combine.c: Add include of expr.h.
      	(cant_combine_insn_p): Do not combine moves from any hard non-fixed
      	register to a pseudo.
      	(make_more_copies): New function, add a copy to a new pseudo after
      	the moves from hard registers into pseudos.
      	(rest_of_handle_combine): Declare rebuild_jump_labels_after_combine
      	later.  Call make_more_copies.
      
      From-SVN: r265398
      8d2d3958
    • Marek Polacek's avatar
      re PR testsuite/87694 (problem in g++.dg/concepts/memfun-err.C starting with r263343) · f3b13f46
      Marek Polacek authored
      	PR testsuite/87694
      	* g++.dg/concepts/memfun-err.C: Make it a compile test.
      
      From-SVN: r265397
      f3b13f46
Loading