1. 24 Jul, 2017 1 commit
  2. 23 Jul, 2017 9 commits
    • config.gcc (*-*-netbsd*): Remove check for NetBSD versions not having __cxa_atexit. · b74103ef
      2017-07-23  Krister Walfridsson  <krister.walfridsson@gmail.com>
      
      	* config.gcc (*-*-netbsd*): Remove check for NetBSD versions not
      	having __cxa_atexit.
      
      From-SVN: r250466
      Krister Walfridsson committed
    • arm.c (arm_option_override): Deprecate use of -mstructure-size-boundary. · 33cd5f8f
      2017-07-23  Michael Collison  <michael.collison@arm.com>
      
      	* config/arm/arm.c (arm_option_override): Deprecate
      	use of -mstructure-size-boundary.
      	* config/arm/arm.opt: Deprecate -mstructure-size-boundary.
      	* doc/invoke.texi: Deprecate -mstructure-size-boundary.
      
      From-SVN: r250465
      Michael Collison committed
    • Add optimized implementation of mersenne twister for aarch64 · 5bbf7664
      2017-07-23  Michael Collison  <michael.collison@arm.com>
      
      	Add optimized implementation of mersenne twister for aarch64
      	* config/cpu/aarch64/opt/ext/opt_random.h: New file.
      	(__arch64_recursion): New function.
      	(__aarch64_lsr_128): New function.
      	(__aarch64_lsl_128): New function.
      	(operator==): New function.
      	(simd_fast_mersenne_twister_engine): Implement
      	method _M_gen_rand.
      	* config/cpu/aarch64/opt/bits/opt_random.h: New file.
      	* include/ext/random: (simd_fast_mersenne_twister_engine):
      	add _M_state private array.
      
      From-SVN: r250464
      Michael Collison committed
    • fortran: fix pair_cmp qsort comparator · c5014982
      	* interface.c (pair_cmp): Fix gfc_symbol comparison.  Adjust comment.
      
      From-SVN: r250463
      Alexander Monakov committed
    • pr56727-2.c: Limit to powerpc-linux. · e2b71b5a
              * gcc.dg/pr56727-2.c: Limit to powerpc-linux.
              * gcc.dg/debug/dwarf2/stacked-qualified-types-3.c: Remove AIX XFAIL.
      
      From-SVN: r250462
      David Edelsohn committed
    • re PR target/80695 (gratuitous use of stxvx to store multiple pointers) · 3597188b
      2017-07-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR target/80695
      	* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
      	Reduce cost estimate for direct moves.
      
      From-SVN: r250461
      Bill Schmidt committed
    • re PR target/80569 (i686: "shrx" instruction generated in 16-bit mode) · f36dda3b
      	PR target/80569
      	* config/i386/i386.c (ix86_option_override_internal): Disable
      	BMI, BMI2 and TBM instructions for -m16.
      
      testsuite/ChangeLog:
      
      	PR target/80569
      	* gcc.target/i386/pr80569.c: New test.
      
      From-SVN: r250459
      Uros Bizjak committed
    • re PR libstdc++/81064 (Inline namespace regression) · 4a15d842
      2017-07-23  François Dumont  <fdumont@gcc.gnu.org>
      
      	PR libstdc++/81064
      	* include/bits/algorithmfwd.h: Reorganize versioned namespace.
      	* include/bits/basic_string.h: Likewise.
      	* include/bits/c++config: Likewise.
      	* include/bits/deque.tcc: Likewise.
      	* include/bits/forward_list.h: Likewise.
      	* include/bits/forward_list.tcc: Likewise.
      	* include/bits/hashtable_policy.h: Likewise.
      	* include/bits/list.tcc: Likewise.
      	* include/bits/move.h: Likewise.
      	* include/bits/quoted_string.h: Likewise.
      	* include/bits/random.h: Likewise.
      	* include/bits/random.tcc: Likewise.
      	* include/bits/regex.h: Likewise.
      	* include/bits/regex.tcc: Likewise.
      	* include/bits/regex_automaton.h: Likewise.
      	* include/bits/regex_automaton.tcc: Likewise.
      	* include/bits/regex_compiler.h: Likewise.
      	* include/bits/regex_compiler.tcc: Likewise.
      	* include/bits/regex_constants.h: Likewise.
      	* include/bits/regex_error.h: Likewise.
      	* include/bits/regex_executor.h: Likewise.
      	* include/bits/regex_executor.tcc: Likewise.
      	* include/bits/regex_scanner.h: Likewise.
      	* include/bits/regex_scanner.tcc: Likewise.
      	* include/bits/specfun.h: Likewise.
      	* include/bits/stl_algo.h: Likewise.
      	* include/bits/stl_algobase.h: Likewise.
      	* include/bits/stl_bvector.h: Likewise.
      	* include/bits/stl_deque.h: Likewise.
      	* include/bits/stl_iterator.h: Likewise.
      	* include/bits/stl_iterator_base_funcs.h: Likewise.
      	* include/bits/stl_list.h: Likewise.
      	* include/bits/stl_map.h: Likewise.
      	* include/bits/stl_multimap.h: Likewise.
      	* include/bits/stl_multiset.h: Likewise.
      	* include/bits/stl_relops.h: Likewise.
      	* include/bits/stl_set.h: Likewise.
      	* include/bits/stl_vector.h: Likewise.
      	* include/bits/uniform_int_dist.h: Likewise.
      	* include/bits/unordered_map.h: Likewise.
      	* include/bits/unordered_set.h: Likewise.
      	* include/bits/vector.tcc: Likewise.
      	* include/c_global/cmath: Likewise.
      	* include/c_std/cmath: Likewise.
      	* include/decimal/decimal: Likewise.
      	* include/decimal/decimal.h: Likewise.
      	* include/experimental/algorithm: Likewise.
      	* include/experimental/any: Likewise.
      	* include/experimental/array: Likewise.
      	* include/experimental/bits/erase_if.h: Likewise.
      	* include/experimental/bits/fs_dir.h: Likewise.
      	* include/experimental/bits/fs_fwd.h: Likewise.
      	* include/experimental/bits/fs_ops.h: Likewise.
      	* include/experimental/bits/fs_path.h: Likewise.
      	* include/experimental/bits/lfts_config.h: Likewise.
      	* include/experimental/bits/shared_ptr.h: Likewise.
      	* include/experimental/bits/string_view.tcc: Likewise.
      	* include/experimental/chrono: Likewise.
      	* include/experimental/deque: Likewise.
      	* include/experimental/filesystem: Likewise.
      	* include/experimental/forward_list: Likewise.
      	* include/experimental/functional: Likewise.
      	* include/experimental/iterator: Likewise.
      	* include/experimental/list: Likewise.
      	* include/experimental/map: Likewise.
      	* include/experimental/memory: Likewise.
      	* include/experimental/memory_resource: Likewise.
      	* include/experimental/numeric: Likewise.
      	* include/experimental/optional: Likewise.
      	* include/experimental/propagate_const: Likewise.
      	* include/experimental/random: Likewise.
      	* include/experimental/ratio: Likewise.
      	* include/experimental/regex: Likewise.
      	* include/experimental/set: Likewise.
      	* include/experimental/source_location: Likewise.
      	* include/experimental/string: Likewise.
      	* include/experimental/string_view: Likewise.
      	* include/experimental/system_error: Likewise.
      	* include/experimental/tuple: Likewise.
      	* include/experimental/type_traits: Likewise.
      	* include/experimental/unordered_map: Likewise.
      	* include/experimental/unordered_set: Likewise.
      	* include/experimental/utility: Likewise.
      	* include/experimental/vector: Likewise.
      	* include/ext/bitmap_allocator.h: Likewise.
      	* include/ext/codecvt_specializations.h: Likewise.
      	* include/ext/rope: Likewise.
      	* include/ext/typelist.h: Likewise.
      	* include/std/chrono: Likewise.
      	* include/std/complex: Likewise.
      	* include/std/functional: Likewise.
      	* include/std/numeric: Likewise.
      	* include/std/string_view: Likewise.
      	* include/std/thread: Likewise.
      	* include/std/variant: Likewise.
      	* include/tr1/array: Likewise.
      	* include/tr1/bessel_function.tcc: Likewise.
      	* include/tr1/beta_function.tcc: Likewise.
      	* include/tr1/cmath: Likewise.
      	* include/tr1/complex: Likewise.
      	* include/tr1/ell_integral.tcc: Likewise.
      	* include/tr1/exp_integral.tcc: Likewise.
      	* include/tr1/functional: Likewise.
      	* include/tr1/functional_hash.h: Likewise.
      	* include/tr1/gamma.tcc: Likewise.
      	* include/tr1/hashtable.h: Likewise.
      	* include/tr1/hashtable_policy.h: Likewise.
      	* include/tr1/hypergeometric.tcc: Likewise.
      	* include/tr1/legendre_function.tcc: Likewise.
      	* include/tr1/modified_bessel_func.tcc: Likewise.
      	* include/tr1/poly_hermite.tcc: Likewise.
      	* include/tr1/poly_laguerre.tcc: Likewise.
      	* include/tr1/random.h: Likewise.
      	* include/tr1/random.tcc: Likewise.
      	* include/tr1/regex: Likewise.
      	* include/tr1/riemann_zeta.tcc: Likewise.
      	* include/tr1/shared_ptr.h: Likewise.
      	* include/tr1/special_function_util.h: Likewise.
      	* include/tr1/tuple: Likewise.
      	* include/tr1/type_traits: Likewise.
      	* include/tr1/unordered_map.h: Likewise.
      	* include/tr1/unordered_set.h: Likewise.
      	* include/tr1/utility: Likewise.
      	* include/tr2/bool_set: Likewise.
      	* include/tr2/bool_set.tcc: Likewise.
      	* include/tr2/dynamic_bitset: Likewise.
      	* include/tr2/dynamic_bitset.tcc: Likewise.
      	* include/tr2/ratio: Likewise.
      	* include/tr2/type_traits: Likewise.
      	* src/c++11/chrono.cc: Likewise.
      	* src/c++11/compatibility-c++0x.cc: Likewise.
      	* src/c++11/compatibility-chrono.cc: Likewise.
      	* src/c++11/cxx11-shim_facets.cc: Likewise.
      	* src/c++11/hashtable_c++0x.cc: Likewise.
      	* src/c++11/placeholders.cc: Likewise.
      	* src/c++11/thread.cc: Likewise.
      	* src/c++98/bitmap_allocator.cc: Likewise.
      	* src/c++98/hashtable_tr1.cc: Likewise.
      	* src/c++98/list.cc: Likewise.
      	* src/shared/hashtable-aux.cc: Likewise.
      	* testsuite/20_util/duration/literals/range.cc: Adapt line number.
      	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
      	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
      	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
      	* testsuite/20_util/forward/c_neg.cc: Likewise.
      	* testsuite/20_util/forward/f_neg.cc: Likewise.
      	* testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
      	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
      	* testsuite/26_numerics/random/pr60037-neg.cc: Likewise.
      	* python/libstdcxx/v6/printers.py: Adapt.
      
      From-SVN: r250458
      François Dumont committed
    • Daily bump. · ab45a34c
      From-SVN: r250457
      GCC Administrator committed
  3. 22 Jul, 2017 2 commits
    • Daily bump. · bd3d1c9f
      From-SVN: r250451
      GCC Administrator committed
    • rs6000-c.c (altivec_overloaded_builtins): Add ALTIVEC_BUILTIN_VMULESW... · 5ff4baa5
      gcc/ChangeLog:
      
      2017-07-21  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
      	ALTIVEC_BUILTIN_VMULESW, ALTIVEC_BUILTIN_VMULEUW,
      	ALTIVEC_BUILTIN_VMULOSW, ALTIVEC_BUILTIN_VMULOUW entries.
      	* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin,
      	builtin_function_type): Add ALTIVEC_BUILTIN_* case statements.
      	* config/rs6000/altivec.md (MVULEUW, VMULESW, VMULOUW,
      	VMULOSW): New enum "unspec" values.
      	(altivec_vmuleuw, altivec_vmulesw, altivec_vmulouw,
      	altivec_vmulosw): New patterns.
      	* config/rs6000/rs6000-builtin.def (VMLEUW, VMULESW, VMULOUW,
      	VMULOSW): Add definitions.
      
      gcc/testsuite/ChangeLog:
      
      2017-07-21  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-2.c (vmulosh, vmulouh, vmulesh,
      	vmuleuh): Fix scan-assembler-times should check for word not half word
      	instructions.
      
      From-SVN: r250450
      Carl Love committed
  4. 21 Jul, 2017 26 commits
    • Add RDMA support to falkor port. · 43f84f6c
      	gcc/
      	* config/aarch64/aarch64-cores.def (falkor): Add AARCH64_FL_RDMA.
      	(qdf24xx): Likewise.
      	* config/aarch64/aarch64-options-extensions.def (rdma); New.
      	* config/aarch64/aarch64.h (AARCH64_FL_RDMA): New.
      	(AARCH64_FL_V8_1): Renumber.
      	(AARCH64_FL_FOR_ARCH8_1): Add AARCH64_FL_RDMA.
      	(AARCH64_ISA_RDMA): Use AARCH64_FL_RDMA.
      	* config/aarch64/arm_neon.h: Use +rdma instead of arch=armv8.1-a.
      	* doc/invoke.texi (AArch64 Options): Mention +rmda in -march docs.  Add
      	rdma to feature modifiers list.
      
      	gcc/testsuite/
      	* lib/target-supports.exp (add_options_for_arm_v8_1a_neon): Delete
      	redundant -march option.
      	(check_effective_target_arm_v8_1a_neon_ok_nocache): Try armv8-a+rdma
      	in addition to armv8.1-a.
      
      From-SVN: r250444
      Jim Wilson committed
    • syscall: call f?statfs64 on GNU/Linux · 0901429d
          
          We unconditionally set _FILE_OFFSET_BITS to 64 in configure.ac, so we
          should unconditionally call the statfs64 and fstatfs64 functions.
          These functions should be available on all versions of GNU/Linux since 2.6.
          On 64-bit systems they are aliased to statfs/fstatfs, and on 32-bit
          systems they use the 64-bit data structures.
          
          Fixes golang/go#20922
          
          Reviewed-on: https://go-review.googlesource.com/50635
      
      From-SVN: r250443
      Ian Lance Taylor committed
    • re PR middle-end/56727 (Recursive call goes through the PLT unnecessarily) · 325fe816
      2017-07-21  Yury Gribov  <tetra2005@gmail.com>
      
      	PR middle-end/56727
      	* ipa-visibility (function_and_variable_visibility): Convert
      	recursive PLT call to direct call if appropriate.
      
      	* gcc.dg/pr56727-1.c: New test.
      	* gcc.dg/pr56727-2.c: New test.
      
      From-SVN: r250442
      Yury Gribov committed
    • search.c (lookup_conversion_operator): Return overloads. · d5c125ca
      	* search.c (lookup_conversion_operator): Return overloads.
      	(lookup_fnfields_idx_nolazy): Absorb into ...
      	(lookup_fnfields_slot_nolaxy): ... here.
      	(lookup_fnfields_1): Absorb into ...
      	(lookup_fnfields_slot): ... here.
      
      From-SVN: r250440
      Nathan Sidwell committed
    • runtime: don't use runtime_lock in __go_get_backtrace_state · df206c6e
          
          If getSiginfo does not know how to determine the PC, it will call
          runtime_callers. That can happen in a thread that was started by
          non-Go code, in which case the TLS variable g will not be set, in
          which case runtime_lock will crash.
          
          Avoid the problem by using atomic operations for the lock. This is OK
          since creating a backtrace state is fast and never blocks.
          
          The test case is TestCgoExternalThreadSIGPROF in the runtime package
          on a system that getSiginfo doesn't handle specially.
          
          Updates golang/go#20931
          
          Reviewed-on: https://go-review.googlesource.com/50650
      
      From-SVN: r250439
      Ian Lance Taylor committed
    • Remove special CDtor METHOD_VEC slots. · 2401ffc3
      	* cp-tree.h (CLASSTYPE_CONSTRUCTOR_SLOT,
      	CLASSTYPE_DESTRUCTOR_SLOT): Delete.
      	(CLASSTYPE_CONSTRUCTORS): Use lookup_fnfields_slot_nolazy.
      	(CLASSTYPE_DESTRUCTOR): Likewise.
      	* class (add_method): Don't use special cdtor slots.
      	* search.c (lookup_fnfields_idx_nolazy): Likewise.
      	(look_for_overrides_here): Use lookup_fnfields_slot.
      	* semantics (classtype_has_nothrow_assign_or_copy_p): Likewise.
      
      From-SVN: r250437
      Nathan Sidwell committed
    • runtime: handle PPC/PPC64 GNU/Linux in getSiginfo · 0ab71760
          
          Updates golang/go#20931
          
          Reviewed-on: https://go-review.googlesource.com/50631
      
      From-SVN: r250436
      Ian Lance Taylor committed
    • filetype.awk: Add AIX XCOFF type detection. · b3530b94
      	* filetype.awk: Add AIX XCOFF type detection.
      	* configure.ac: Recognize xcoff format.
      	* Makefile.am (FORMAT_FILES): Add xcoff.c.
      	* fileline.c: Include <unistd.h>.
      	(fileline_initialize): Add case for AIX procfs.
      	* xcoff.c: New file.
      	* configure, Makefile.in: Rebuild.
      
      From-SVN: r250435
      Tony Reix committed
    • call.c (add_candidates): Move decls to initialization. · 60f80e65
      	* call.c (add_candidates): Move decls to initialization.  Don't
      	use !!.
      
      From-SVN: r250434
      Nathan Sidwell committed
    • runtime: allocate more stack space in CgoCallbackGC test · 048f0471
          
          Allocate enough stack space so that the test will work on a system
          that does not support split stacks.
          
          This test is actually not very meaningful for gccgo at present, but it
          doesn't hurt to keep running it.
          
          Updates golang/go#20931
          
          Reviewed-on: https://go-review.googlesource.com/50630
      
      From-SVN: r250433
      Ian Lance Taylor committed
    • Now completeting the mmintrin.h intrinsic headers for PowerPC by · 5a5838e0
      adding the DG tests.
      
      2017-07-21  Steven Munroe  <munroesj@gcc.gnu.org>
      
      	* gcc.target/powerpc/mmx-check.h: New file.
      	* gcc.target/powerpc/mmx-packs.c: New file.
      	* gcc.target/powerpc/mmx-packssdw-1.c: New file.
      	* gcc.target/powerpc/mmx-packsswb-1.c: New file.
      	* gcc.target/powerpc/mmx-packuswb-1.c: New file.
      	* gcc.target/powerpc/mmx-paddb-1.c: New file.
      	* gcc.target/powerpc/mmx-paddd-1.c: New file.
      	* gcc.target/powerpc/mmx-paddsb-1.c: New file.
      	* gcc.target/powerpc/mmx-paddsw-1.c: New file.
      	* gcc.target/powerpc/mmx-paddusb-1.c: New file.
      	* gcc.target/powerpc/mmx-paddusw-1.c: New file.
      	* gcc.target/powerpc/mmx-paddw-1.c: New file.
      	* gcc.target/powerpc/mmx-pcmpeqb-1.c: New file.
      	* gcc.target/powerpc/mmx-pcmpeqd-1.c: New file.
      	* gcc.target/powerpc/mmx-pcmpeqw-1.c: New file.
      	* gcc.target/powerpc/mmx-pcmpgtb-1.c: New file.
      	* gcc.target/powerpc/mmx-pcmpgtd-1.c: New file.
      	* gcc.target/powerpc/mmx-pcmpgtw-1.c: New file.
      	* gcc.target/powerpc/mmx-pmaddwd-1.c: New file.
      	* gcc.target/powerpc/mmx-pmulhw-1.c: New file.
      	* gcc.target/powerpc/mmx-pmullw-1.c: New file.
      	* gcc.target/powerpc/mmx-pslld-1.c: New file.
      	* gcc.target/powerpc/mmx-psllw-1.c: New file.
      	* gcc.target/powerpc/mmx-psrad-1.c: New file.
      	* gcc.target/powerpc/mmx-psraw-1.c: New file.
      	* gcc.target/powerpc/mmx-psrld-1.c: New file.
      	* gcc.target/powerpc/mmx-psrlw-1.c: New file.
      	* gcc.target/powerpc/mmx-psubb-2.c: New file.
      	* gcc.target/powerpc/mmx-psubd-2.c: New file.
      	* gcc.target/powerpc/mmx-psubsb-1.c: New file.
      	* gcc.target/powerpc/mmx-psubsw-1.c: New file.
      	* gcc.target/powerpc/mmx-psubusb-1.c: New file.
      	* gcc.target/powerpc/mmx-psubusw-1.c: New file.
      	* gcc.target/powerpc/mmx-psubw-2.c: New file.
      	* gcc.target/powerpc/mmx-punpckhbw-1.c: New file.
      	* gcc.target/powerpc/mmx-punpckhdq-1.c: New file.
      	* gcc.target/powerpc/mmx-punpckhwd-1.c: New file.
      	* gcc.target/powerpc/mmx-punpcklbw-1.c: New file.
      	* gcc.target/powerpc/mmx-punpckldq-1.c: New file.
      	* gcc.target/powerpc/mmx-punpcklwd-1.c: New file.
      
      From-SVN: r250432
      Steven Munroe committed
    • tree-ssa-sccvn.c (vn_nary_op_eq): Check BIT_INSERT_EXPR's operand 1 to see if… · 27ecd5c2
      tree-ssa-sccvn.c (vn_nary_op_eq): Check BIT_INSERT_EXPR's operand 1 to see if the types precision matches.
      
      2017-07-21  Andrew Pinski  <apinski@cavium.com>
      
              * tree-ssa-sccvn.c (vn_nary_op_eq): Check BIT_INSERT_EXPR's
              operand 1 to see if the types precision matches.
              * fold-const.c (operand_equal_p): Likewise.
      
      From-SVN: r250431
      Andrew Pinski committed
    • Add AddressSanitizer annotations to std::vector · 8c7331c5
      	* config/allocator/malloc_allocator_base.h [__SANITIZE_ADDRESS__]
      	(_GLIBCXX_SANITIZE_STD_ALLOCATOR): Define.
      	* config/allocator/new_allocator_base.h [__SANITIZE_ADDRESS__]
      	(_GLIBCXX_SANITIZE_STD_ALLOCATOR): Define.
      	* doc/xml/manual/using.xml (_GLIBCXX_SANITIZE_VECTOR): Document macro.
      	* include/bits/stl_vector.h [_GLIBCXX_SANITIZE_VECTOR]
      	(_Vector_impl::_Asan, _Vector_impl::_Asan::_Reinit)
      	(_Vector_impl::_Asan::_Grow, _GLIBCXX_ASAN_ANNOTATE_REINIT)
      	(_GLIBCXX_ASAN_ANNOTATE_GROW, _GLIBCXX_ASAN_ANNOTATE_GREW)
      	(_GLIBCXX_ASAN_ANNOTATE_SHRINK, _GLIBCXX_ASAN_ANNOTATE_BEFORE_DEALLOC):
      	Define annotation helper types and macros.
      	(vector::~vector, vector::push_back, vector::pop_back)
      	(vector::_M_erase_at_end): Add annotations.
      	* include/bits/vector.tcc (vector::reserve, vector::emplace_back)
      	(vector::insert, vector::_M_erase, vector::operator=)
      	(vector::_M_fill_assign, vector::_M_assign_aux)
      	(vector::_M_insert_rval, vector::_M_emplace_aux)
      	(vector::_M_insert_aux, vector::_M_realloc_insert)
      	(vector::_M_fill_insert, vector::_M_default_append)
      	(vector::_M_shrink_to_fit, vector::_M_range_insert): Annotate.
      
      From-SVN: r250430
      Jonathan Wakely committed
    • re PR lto/81487 ([mingw32] ld.exe: error: asprintf failed) · 5c2dee6f
      lto-plugin/
      	PR lto/81487
      	* lto-plugin.c (claim_file_handler): Use xasprintf instead of
      	asprintf.
      	[hi!=0]: Swap hi and lo arguments supplied to xasprintf.
      
      From-SVN: r250428
      Georg-Johann Lay committed
    • re PR tree-optimization/81303 (410.bwaves regression caused by r249919) · d629ab44
      2017-07-21  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/81303
      	* tree-vect-data-refs.c (vect_get_peeling_costs_all_drs): Pass
      	in datarefs vector.  Allow NULL dr0 for no peeling cost estimate.
      	(vect_peeling_hash_get_lowest_cost): Adjust.
      	(vect_enhance_data_refs_alignment): Likewise.  Use
      	vect_get_peeling_costs_all_drs to compute the penalty for no
      	peeling to match up costs.
      
      From-SVN: r250424
      Richard Biener committed
    • re PR tree-optimization/81500 (ICE with -O3 in process_use, at tree-vect-stmts.c:506) · 9af7f373
      2017-06-21  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/81500
      	* tree-vect-loop.c (vect_is_simple_reduction): Properly fail if
      	we didn't identify a reduction path.
      
      	* gcc.dg/torture/pr81500.c: New testcase.
      
      From-SVN: r250423
      Richard Biener committed
    • Add missing edge probabilities in nvptx_goacc_reduction_init · 8c38aed7
      2017-07-21  Tom de Vries  <tom@codesourcery.com>
      	    Cesar Philippidis  <cesar@codesourcery.com>
      
      	PR gcov-profile/81442
      	* config/nvptx/nvptx.c (nvptx_goacc_reduction_init): Add missing edge
      	probabilities.
      
      Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
      
      From-SVN: r250422
      Tom de Vries committed
    • Add nvptx_override_options_after_change · 967a353a
      2017-07-21  Tom de Vries  <tom@codesourcery.com>
      
      	PR lto/81430
      	* config/nvptx/nvptx.c (nvptx_override_options_after_change): New
      	function.
      	(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): Define to
      	nvptx_override_options_after_change.
      
      From-SVN: r250421
      Tom de Vries committed
    • dwarf2out.c (output_file_names): Avoid double testing for dwarf_version >= 5. · 4bb3f8b5
      gcc/
      	* dwarf2out.c (output_file_names): Avoid double testing for
      	dwarf_version >= 5.
      
      From-SVN: r250420
      Ulrich Drepper committed
    • invoke.texi (AVR Built-in Functions): Re-layout section. · 74360f14
      gcc/
      	* doc/invoke.texi (AVR Built-in Functions): Re-layout section.
      
      From-SVN: r250419
      Georg-Johann Lay committed
    • cfgcleanup.c (flow_find_cross_jump): Do not crossjump across hot/cold regions. · ba61fc53
      
      	* cfgcleanup.c (flow_find_cross_jump): Do not crossjump across
      	hot/cold regions.
      	(try_crossjump_to_edge): Do not punt on partitioned functions.
      
      From-SVN: r250418
      Jan Hubicka committed
    • bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges): Put all BBs… · d9af4fea
      bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges): Put all BBs reachable only via paths crossing cold region to cold region.
      
      
      	* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges):
      	Put all BBs reachable only via paths crossing cold region to cold
      	region.
      	* cfgrtl.c (find_bbs_reachable_by_hot_paths): New function.
      
      From-SVN: r250417
      Jan Hubicka committed
    • re PR tree-optimization/81303 (410.bwaves regression caused by r249919) · 1dae21ad
      2016-07-21  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/81303
      	* tree-vect-loop.c (vect_estimate_min_profitable_iters): Take
      	into account prologue and epilogue iterations when raising
      	min_profitable_iters to sth at least covering one vector iteration.
      
      From-SVN: r250416
      Richard Biener committed
    • arm.c (arm_test_cpu_arch_dat): Check for overlap. · ac48cd5e
      2017-07-21  Tamar Christina  <tamar.christina@arm.com>
      
      	* config/arm/arm.c (arm_test_cpu_arch_dat):
      	Check for overlap.
      
      From-SVN: r250415
      Tamar Christina committed
    • Remove TYPE_METHODS. · 5aaa8fb4
      	gcc/
      	Remove TYPE_METHODS.
      	* tree.h (TYPE_METHODS): Delete.
      	* dwarf2out.c (gen_member_die): Member fns are on TYPE_FIELDS.
      	* dbxout.c (dbxout_type_fields): Ignore FUNCTION_DECLs.
      	(dbxout_type_methods): Scan TYPE_FIELDS.
      	(dbxout_type): Don't check TYPE_METHODS here.
      	* function.c (use_register_for_decl): Always ignore register for
      	class types when not optimizing.
      	* ipa-devirt.c (odr_types_equivalent_p): Delete TYPE_METHODS scan.
      	* tree.c (free_lang_data_in_type): Stitch out member functions and
      	templates from TYPE_FIELDS.
      	(build_distinct_type_copy, verify_type_variant,
      	verify_type): Member fns are on TYPE_FIELDS.
      	* tree-dump.c (dequeue_and_dump): No TYPE_METHODS.
      	* tree-pretty-print.c (dump_generic_node): Likewise.
      
      	gcc/cp/
      	Remove TYPE_METHODS.
      	* class.c (maybe_warn_about_overly_private_class,
      	finish_struct_methods, one_inheriting_sig, count_fields,
      	add_fields_to_record_type, check_field_decls, check_methods,
      	clone_function_decl, set_method_tm_attributes,
      	finalize_literal_type_property, check_bases_and_members,
      	create_vtable_ptr, determine_key_method,
      	unreverse_member_declarations, finish_struct,
      	add_vcall_offset_vtbl_entries_1): Member fns are on TYPE_FIELDS.
      	* decl.c (fixup_anonymous_aggr): Likewise.
      	* decl2.c (reset_type_linkage_2): Likewise.
      	* method.c (after_nsdmi_defaulted_late_checks,
      	lazily_declare_fn): Likewise.
      	* optimize.c (maybe_thunk_body, maybe_clone_body): Likewise.
      	* pt.c (instantiate_class_template_1, tsubst_expr,
      	do_type_instantiation, instantiate_pending_templates): Likewise.
      	* search.c (lookup_field_1): Likewise.
      	* semantics.c (finish_member_declaration,
      	finish_omp_declare_simd_methods): Likewise.
      
      	gcc/c-family/
      	Remove TYPE_METHODS.
      	* c-ada-spec.c (is_tagged_type, has_nontrivial_methods,
      	dump_ada_template, print_ada_methods,
      	print_ada_declaration): Member fns are on TYPE_FIELDS.
      
      	gcc/objc/
      	Remove TYPE_METHODS.
      	* objc-runtime-shared-support.c (build_ivar_list_initializer):
      	Don't presume first item is a FIELD_DECL.
      
      	gcc/testsuite/
      	* g++.dg/ext/anon-struct6.C: Adjust diag.
      	* g++.old-deja/g++.other/anon4.C: Adjust diag.
      
      	libcc1/
      	Remove TYPE_METHODS.
      	* libcp1plugin.cc (plugin_build_decl): Member fns are on TYPE_FIELDS.
      
      From-SVN: r250413
      Nathan Sidwell committed
    • Daily bump. · 61612fa5
      From-SVN: r250412
      GCC Administrator committed
  5. 20 Jul, 2017 2 commits
    • compiler: add explicit convert in Type_guard_expression::do_get_backend · 033e96a2
          
          The current recipe in Type_guard_expression for creating a Bexpression
          performs a type conversion at the Type level, but doesn't invoke
          Backend::convert_expression to capture the conversion for the back
          end. Add code to create a BE type conversion operation.
          
          Reviewed-on: https://go-review.googlesource.com/50373
      
      From-SVN: r250400
      Ian Lance Taylor committed
    • re PR target/80846 (auto-vectorized AVX2 horizontal sum should narrow to 128b… · 2953b72f
      re PR target/80846 (auto-vectorized AVX2 horizontal sum should narrow to 128b right away, to be more efficient for Ryzen and Intel)
      
      	PR target/80846
      	* config/i386/i386.c (ix86_expand_vector_init_general): Handle
      	V2TImode and V4TImode.
      	(ix86_expand_vector_extract): Likewise.
      	* config/i386/sse.md (VMOVE): Enable V4TImode even for just
      	TARGET_AVX512F, instead of only for TARGET_AVX512BW.
      	(ssescalarmode): Handle V4TImode and V2TImode.
      	(VEC_EXTRACT_MODE): Add V4TImode and V2TImode.
      	(*vec_extractv2ti, *vec_extractv4ti): New insns.
      	(VEXTRACTI128_MODE): New mode iterator.
      	(splitter for *vec_extractv?ti first element): New.
      	(VEC_INIT_MODE): New mode iterator.
      	(vec_init<mode>): Consolidate 3 expanders into one using
      	VEC_INIT_MODE mode iterator.
      
      	* gcc.target/i386/avx-pr80846.c: New test.
      	* gcc.target/i386/avx2-pr80846.c: New test.
      	* gcc.target/i386/avx512f-pr80846.c: New test.
      
      From-SVN: r250397
      Jakub Jelinek committed