Commit Graph

152976 Commits

Author SHA1 Message Date
Martin Sebor 13e6ec34a8 Adjust dg-bogus pattern to match the text of the changed diagnostic.
gcc/testsuite:
	* gcc.dg/pr40340-3.c: Adjust directive pattern.
	* gcc.dg/pr40340-4.c: Same.

From-SVN: r246827
2017-04-10 17:26:17 -06:00
Nicolas Koenig a2cb1196cf re PR fortran/69498 (ICE on disjunct cases with displaced or incomplete embedded statement)
2017-04-10  Nicolas Koenig  <koenigni@student.ethz.ch>
            Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/69498 
	* module.c (gfc_match_submodule): Add error
	if function is called in the wrong state.

2017-04-10  Nicolas Koenig  <koenigni@student.ethz.ch>

	PR fortran/69498 
	* gfortran.dg/submodule_unexp.f90: Modified test
	to account for new error.
	* gfortran.dg/submodule_twice.f90: New Test


Co-Authored-By: Paul Thomas <pault@gcc.gnu.org>

From-SVN: r246826
2017-04-10 20:58:21 +00:00
Jakub Jelinek b447b28c5e re PR c++/80176 (cannot bind reference to static member function using object access expression)
PR c++/80176
	* tree.c (lvalue_kind): For COMPONENT_REF with BASELINK second
	operand, if it is a static member function, recurse on the
	BASELINK.

	* g++.dg/init/ref23.C: New test.

From-SVN: r246825
2017-04-10 22:49:11 +02:00
Thomas Koenig 3bbd6768bd re PR tree-optimization/80304 (Wrong result with do concurrent)
2017-04-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR tree-optimization/80304
	* gfortran.dg/do_concurrent_4.f90:  New test case.

From-SVN: r246824
2017-04-10 20:40:48 +00:00
Janus Weil 99827b5ca0 re PR fortran/80046 ([F03] Explicit interface required: pointer argument)
2017-04-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/80046
	* expr.c (gfc_check_pointer_assign): Check if procedure pointer
	components in a pointer assignment need an explicit interface.

2017-04-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/80046
	* gfortran.dg/proc_ptr_comp_48.f90: New test case.

From-SVN: r246823
2017-04-10 22:28:23 +02:00
David Edelsohn 7db31bc20c * g++.dg/torture/pr79905.C: Add -maltivec option.
From-SVN: r246820
2017-04-10 15:50:33 -04:00
Jeff Law 9058a2c5c5 re PR tree-optimization/80374 (ICE in fold_convert_loc, at fold-const.c:2384)
PR tree-optimization/80374
	* tree-ssa-dom.c (derive_equivalences_from_bit_ior): Do not try to
	record anything if we can not convert integer_zero_node to the
	desired type.

	PR tree-optimization/80374
	* g++.dg/pr80374.c: New test.

From-SVN: r246819
2017-04-10 13:19:42 -06:00
Kelvin Nilsen bd8f86429e re PR target/80108 (ICE in aggregate_value_p at function.c:2028)
gcc/ChangeLog:

2017-04-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	PR target/80108
	* config/rs6000/rs6000.c (rs6000_option_override_internal):
	Enhance special handling given to the TARGET_P9_MINMAX option in
	relation to certain other options.

gcc/testsuite/ChangeLog:

2017-04-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	PR target/80108
	* gcc.target/powerpc/ppc-fortran/ppc-fortran.exp: New file.
	* gcc.target/powerpc/ppc-fortran/pr80108-1.f90: New test.

From-SVN: r246818
2017-04-10 19:01:37 +00:00
Uros Bizjak f634dd47d6 unroll-7.c: Declare "a" as a pointer to external array.
* gcc.dg/unroll-7.c: Declare "a" as a pointer to external array.

From-SVN: r246817
2017-04-10 20:58:34 +02:00
Uros Bizjak 065ba17919 re PR testsuite/79356 (XPASS in attr-alloc_size-11.c)
PR testsuite/79356
	* gcc.dg/attr-alloc_size-11.c: Don't xfail on alpha.

From-SVN: r246816
2017-04-10 20:51:42 +02:00
Daniel Santos 71b838d035 re PR testsuite/79867 ([cygwin] LD_LIBRARY_PATH ignored, contaminating (nearly?) all test results)
2017-04-10  Daniel Santos <daniel.santos@pobox.com>

	PR testsuite/79867
	* lib/target-libpath.exp: Merge in cygwin fix from libffi.

From-SVN: r246813
2017-04-10 17:45:35 +00:00
Marek Polacek 98a7a34e26 re PR sanitizer/80348 (UBSAN: compile time crash in ubsan_instrument_division)
PR sanitizer/80348
	* typeck.c (cp_build_binary_op): Use NULL_TREE instead of NULL.  Set
	ORIG_TYPE earlier and not only when shortening.

	* g++.dg/ubsan/div-by-zero-3.C: New test.

From-SVN: r246812
2017-04-10 17:18:15 +00:00
Bin Cheng 46bf3f84b6 re PR tree-optimization/80153 (ivopt generate wrong code)
PR tree-optimization/80153
	* tree-ssa-loop-ivopts.c (add_iv_candidate_for_use): Check and 
	remove POINTER_PLUS_EXPR's base part directly, rather than through
	aff_tree.

From-SVN: r246811
2017-04-10 16:54:14 +00:00
Bin Cheng aac69a62a1 re PR tree-optimization/80153 (ivopt generate wrong code)
PR tree-optimization/80153
	* tree-affine.c (aff_combination_to_tree): Get base pointer from
	the first element of pointer type aff_tree.  Build result expr in
	aff_tree's type.
	(add_elt_to_tree): Convert to type unconditionally.  Remove other
	fold_convert calls.
	* tree-ssa-loop-ivopts.c (alloc_iv): Pass in consistent types.
	(rewrite_use_nonlinear_expr): Check invariant using iv information.
	gcc/testsuite
	PR tree-optimization/80153
	* gcc.c-torture/execute/pr80153.c: New.

From-SVN: r246810
2017-04-10 16:51:44 +00:00
Richard Biener 78a9876f98 tree-ssa-structalias.c (find_func_aliases): Properly handle asm inputs.
2017-04-10  Richard Biener  <rguenther@suse.de>

	* tree-ssa-structalias.c (find_func_aliases): Properly handle
	asm inputs.

From-SVN: r246809
2017-04-10 15:34:19 +00:00
Vladimir Makarov 9b195552ab re PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack frame)
2017-04-10  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/70478
	* lra-constraints.c (curr_small_class_check): New.
	(update_and_check_small_class_inputs): New.
	(process_alt_operands): Update curr_small_class_check.  Disfavor
	alternative insn memory operands.  Check available regs for small
	class operands.

From-SVN: r246808
2017-04-10 14:58:33 +00:00
Matthew Fortune 1246dc4067 Update MIPS -mvirt option description
gcc/
	PR target/80057
	* config/mips/mips.opt (-mvirt): Update description.
	* doc/invoke.texi (-mvirt): Likewise.

From-SVN: r246807
2017-04-10 13:44:39 +00:00
Richard Biener 737237c9b8 re PR middle-end/80362 (gcc miscompiles arithmetic with signed char)
2017-04-10  Richard Biener  <rguenther@suse.de>

	PR middle-end/80362
	* fold-const.c (fold_binary_loc): Look at unstripped ops when
	looking for NEGATE_EXPR in -A / -B to A / B folding.

	* gcc.dg/torture/pr80362.c: New testcase.

From-SVN: r246805
2017-04-10 13:02:12 +00:00
Martin Liska 541e0d5597 Support multiple files w/ -i option in gcov (PR gcov-profile/80224).
2017-04-10  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/80224
	* gcov.c (print_usage): Fix usage string.
	(get_gcov_intermediate_filename): Remove.
	(output_gcov_file): Use both for normal and intermediate format.
	(generate_results): Do not initialize special file for
	intermediate format.

From-SVN: r246804
2017-04-10 11:37:14 +00:00
Richard Biener ba6ee9fc83 re PR tree-optimization/80304 (Wrong result with do concurrent)
2017-04-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/80304
	* tree-ssa-loop-im.c (ref_indep_loop_p_1): Also recurse
	for safelen.

	* gcc.dg/torture/pr80304.c: New testcase.

From-SVN: r246803
2017-04-10 11:27:05 +00:00
Nathan Sidwell 4d1a05f138 re PR target/79905 (ICE in canonical types differ for identical types __vector(4) int and V4i {aka __vector(4) int})
PR target/79905
	* config/rs6000/rs6000.c (rs6000_vector_type): New.
	(rs6000_init_builtins): Use it.

	PR target/79905
	* g++.dg/torture/pr79905.C: New.

From-SVN: r246802
2017-04-10 11:25:44 +00:00
Kyrylo Tkachov 5ad820964c [ARM] Add source mode to coprocessor pattern SETs
* config/arm/arm.md (<mrc>): Add mode to SET source.
	(<mrrc>): Likewise.

From-SVN: r246801
2017-04-10 11:21:55 +00:00
Richard Biener cd7fac9613 re PR tree-optimization/80344 (-Wuninitialized triggering on a ctor on ARM)
2017-04-10  Richard Biener  <rguenther@suse.de>

	PR middle-end/80344
	* gimplify.c (is_gimple_mem_rhs_or_call): Allow CLOBBERs.

From-SVN: r246800
2017-04-10 08:58:02 +00:00
Martin Liska 3ee0fb02bb Evaluate a SAVE_EXPR before an UBSAN check (PR sanitizer/80350).
2017-04-10  Martin Liska  <mliska@suse.cz>

	PR sanitizer/80350
	* c-ubsan.c (ubsan_instrument_shift): Evaluate RHS before
	doing an UBSAN check.
2017-04-10  Martin Liska  <mliska@suse.cz>

	PR sanitizer/80350
	* c-c++-common/ubsan/pr80350.c: New test.

From-SVN: r246799
2017-04-10 07:29:29 +00:00
Jakub Jelinek 167a5b7797 re PR target/80324 (_mm512_reduce_xxx type instrinsics are missing)
PR target/80324
	* config/i386/avx512fintrin.h (_mm512_reduce_add_epi32,
	_mm512_reduce_mul_epi32, _mm512_reduce_and_epi32,
	_mm512_reduce_or_epi32, _mm512_mask_reduce_add_epi32,
	_mm512_mask_reduce_mul_epi32, _mm512_mask_reduce_and_epi32,
	_mm512_mask_reduce_or_epi32, _mm512_reduce_min_epi32,
	_mm512_reduce_max_epi32, _mm512_reduce_min_epu32,
	_mm512_reduce_max_epu32, _mm512_mask_reduce_min_epi32,
	_mm512_mask_reduce_max_epi32, _mm512_mask_reduce_min_epu32,
	_mm512_mask_reduce_max_epu32, _mm512_reduce_add_ps,
	_mm512_reduce_mul_ps, _mm512_mask_reduce_add_ps,
	_mm512_mask_reduce_mul_ps, _mm512_reduce_min_ps, _mm512_reduce_max_ps,
	_mm512_mask_reduce_min_ps, _mm512_mask_reduce_max_ps,
	_mm512_reduce_add_epi64, _mm512_reduce_mul_epi64,
	_mm512_reduce_and_epi64, _mm512_reduce_or_epi64,
	_mm512_mask_reduce_add_epi64, _mm512_mask_reduce_mul_epi64,
	_mm512_mask_reduce_and_epi64, _mm512_mask_reduce_or_epi64,
	_mm512_reduce_min_epi64, _mm512_reduce_max_epi64,
	_mm512_mask_reduce_min_epi64, _mm512_mask_reduce_max_epi64,
	_mm512_reduce_min_epu64, _mm512_reduce_max_epu64,
	_mm512_mask_reduce_min_epu64, _mm512_mask_reduce_max_epu64,
	_mm512_reduce_add_pd, _mm512_reduce_mul_pd, _mm512_mask_reduce_add_pd,
	_mm512_mask_reduce_mul_pd, _mm512_reduce_min_pd, _mm512_reduce_max_pd,
	_mm512_mask_reduce_min_pd, _mm512_mask_reduce_max_pd): New intrinsics.

	* gcc.target/i386/avx512f-reduce-op-1.c: New test.

From-SVN: r246798
2017-04-10 08:53:28 +02:00
GCC Administrator ab9ead30e8 Daily bump.
From-SVN: r246797
2017-04-10 00:16:18 +00:00
Jason Merrill 3f4334cb95 PR c++/80356 - ICE with reference to function template argument.
PR c++/79294
	* pt.c (convert_nontype_argument_function): Adjust type even with a
	value-dependent argument.

From-SVN: r246794
2017-04-09 01:38:40 -04:00
Jason Merrill c60faeee9e PR c++/80267 - ICE with nested capture of reference
PR c++/60992
	* pt.c (tsubst_copy): Handle lookup finding a capture proxy.

From-SVN: r246793
2017-04-09 01:06:08 -04:00
GCC Administrator 310ce882d9 Daily bump.
From-SVN: r246792
2017-04-09 00:16:13 +00:00
Vladimir Makarov 8d2696f958 re PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack frame)
2017-04-08  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/70478
	* lra-constraints.c: Reverse the last patch.

From-SVN: r246789
2017-04-08 19:18:42 +00:00
Andreas Tobler 8cfd4a9064 aarch64-freebsd.h: Define MCOUNT_NAME.
2017-04-08  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/aarch64/aarch64-freebsd.h: Define MCOUNT_NAME.
    Add comment for WCHAR_T.

From-SVN: r246786
2017-04-08 20:58:22 +02:00
Martin Liska d691b7e406 Revert r246759.
From-SVN: r246785
2017-04-08 17:09:58 +00:00
Aaron Sawdey 27ba97a67a re PR rtl-optimization/80358 (ICE (cc1 killed) building glib with -O3 on powerpc64le-linux-gnu)
2017-04-08  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>

	PR target/80358
	* config/rs6000/rs6000.c (expand_block_compare): Fix boundary check.

From-SVN: r246784
2017-04-08 11:10:26 -05:00
GCC Administrator 38f540cb00 Daily bump.
From-SVN: r246783
2017-04-08 00:16:14 +00:00
Pat Haugen cfe75a22d2 rs6000.c (vec_load_pendulum): Rename...
* rs6000/rs6000.c (vec_load_pendulum): Rename...
	(vec_pairing): ...to this.
	(power9_sched_reorder2): Rewrite code for pairing vector/vecload insns.
	(rs6000_sched_init): Adjust for name change.
	(struct rs6000_sched_context): Likewise.
	(rs6000_init_sched_context): Likewise.
	(rs6000_set_sched_context): Likewise.

From-SVN: r246776
2017-04-07 19:35:44 +00:00
Jakub Jelinek c98b00166a avx512f-vgetmantps-2.c: Add -mfpmath=sse to dg-options.
* gcc.target/i386/avx512f-vgetmantps-2.c: Add -mfpmath=sse to
	dg-options.
	* gcc.target/i386/avx512f-vgetmantpd-2.c: Likewise.

From-SVN: r246775
2017-04-07 21:23:24 +02:00
Jakub Jelinek dcb2c52718 re PR target/80322 (convert intrinsics missing)
PR target/80322
	PR target/80323
	PR target/80325
	PR target/80326
	* config/i386/avxintrin.h (_mm256_cvtsd_f64, _mm256_cvtss_f32): New
	intrinsics.
	* config/i386/avx512fintrin.h (_mm512_int2mask, _mm512_mask2int,
	_mm512_abs_ps, _mm512_mask_abs_ps, _mm512_abs_pd, _mm512_mask_abs_pd,
	_mm512_cvtsd_f64, _mm512_cvtss_f32): Likewise.

	* gcc.target/i386/avx512f-undefined-1.c: New test.
	* gcc.target/i386/avx512f-cvtsd-1.c: New test.
	* gcc.target/i386/avx-cvtsd-1.c: New test.
	* gcc.target/i386/avx512f-cvtss-1.c: New test.
	* gcc.target/i386/avx512f-abspd-1.c: New test.
	* gcc.target/i386/avx-cvtss-1.c: New test.
	* gcc.target/i386/avx512f-absps-1.c: New test.
	* gcc.target/i386/avx512f-int2mask-1.c: New test.
	* gcc.target/i386/avx512f-mask2int-1.c: New test.

From-SVN: r246774
2017-04-07 21:22:00 +02:00
Andreas Tobler ecd5b37e12 aarch64-freebsd.h: Define WCHAR_TYPE.
2017-04-07  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/aarch64/aarch64-freebsd.h: Define WCHAR_TYPE.

From-SVN: r246773
2017-04-07 20:50:11 +02:00
Marek Polacek 2166aeb3ab re PR c++/80095 (ICE with this pointer in NSDMI)
PR c++/80095
	* call.c (build_over_call): Don't check cxx_dialect.
	* cp-gimplify.c (cp_gimplify_init_expr): Don't check cxx_dialect nor
	whether SUB is a CONSTRUCTOR.
	* init.c (build_new_1): Don't check cxx_dialect.
	* tree.c (replace_placeholders): Add a function comment.  Return if
	not in C++14, or if the object isn't a (member of a) class.
	* typeck2.c (store_init_value): Don't check cxx_dialect nor whether
	TYPE is CLASS_TYPE_P.

	* g++.dg/cpp1y/nsdmi-aggr8.C: New test.

From-SVN: r246772
2017-04-07 18:09:55 +00:00
Marek Polacek 1ef532f452 re PR sanitizer/80348 (UBSAN: compile time crash in ubsan_instrument_division)
PR sanitizer/80348
	* typeck.c (cp_build_binary_op): Convert COP[01] to ORIG_TYPE.

	* g++.dg/ubsan/div-by-zero-2.C: New test.

From-SVN: r246770
2017-04-07 17:51:55 +00:00
Jeff Law 29d8aae6bd Makefile.in: Swap definition of LIBGCC_LINKS and inclusion of target makefile fragment.
* Makefile.in: Swap definition of LIBGCC_LINKS and inclusion of
	target makefile fragment.
	* config/sh/t-sh (unwind-dw2-Os-4-200.o): Depend on LIBGCC_LINKS.

From-SVN: r246766
2017-04-07 10:11:57 -06:00
Vladimir Makarov 7879aabea7 re PR rtl-optimization/70703 (Regression in register usage on x86)
2017-04-07  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/70703
	* ira-color.c (update_conflict_hard_regno_costs): Use
	int64_t instead of HOST_WIDE_INT.

From-SVN: r246765
2017-04-07 16:06:28 +00:00
Vladimir Makarov 057da7af80 re PR rtl-optimization/70478 ([LRA] S/390: Performance regression - superfluous stack frame)
2017-04-07  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/70478
	* lra-constraints.c (process_alt_operands): Disfavor alternative
	insn memory operands.

2017-04-07  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/70478
	* gcc.target/s390/pr70478.c: New.

From-SVN: r246764
2017-04-07 16:01:50 +00:00
Jeff Law e3d1043293 iq2000.c (final_prescan_insn): Do not separate a CALL and NOTE_INSN_CALL_ARG_LOCATION.
* config/iq2000/iq2000.c (final_prescan_insn): Do not separate a
	CALL and NOTE_INSN_CALL_ARG_LOCATION.

From-SVN: r246761
2017-04-07 08:26:05 -06:00
Martin Liska 3b6cb9e37e Error message on target attribute on aarch64 target (PR target/79889).
2017-04-07  Martin Liska  <mliska@suse.cz>

	PR target/79889
	* g++.dg/ext/mv8.C: Add aarch64* targets.
2017-04-07  Martin Liska  <mliska@suse.cz>

	PR target/79889
	* config/aarch64/aarch64.c (aarch64_process_target_attr):
	Show error message instead of an ICE.

From-SVN: r246760
2017-04-07 11:20:01 +00:00
Martin Liska 70cd23c019 Add function part to a same comdat group (PR ipa/80212).
2017-04-07  Martin Liska  <mliska@suse.cz>

	PR ipa/80212
	* g++.dg/ipa/pr80212.C: New test.
2017-04-07  Martin Liska  <mliska@suse.cz>

	PR ipa/80212
	* ipa-split.c (split_function): Add function part to a same comdat
	group.

From-SVN: r246759
2017-04-07 10:36:21 +00:00
Thomas Preud'homme fe6bb25f9e [testsuite] Require c99_runtime for pr79800.c
2017-04-07  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/testsuite/
    * gcc.dg/tree-ssa/pr79800.c: Require c99_runtime.

From-SVN: r246758
2017-04-07 09:44:33 +00:00
Richard Biener bf7b869abb re PR tree-optimization/80334 (Segfault when taking address of copy of unaligned struct)
2017-04-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/80334
	* g++.dg/torture/pr80334.C: Use __BIGGEST_ALIGNMENT__ for
	alignas on stack.

From-SVN: r246757
2017-04-07 08:47:43 +00:00
Richard Biener 2d143ba8cf re PR middle-end/80341 (gcc miscompiles division of signed char)
2017-04-07  Richard Biener  <rguenther@suse.de>

	PR middle-end/80341
	* tree.c (get_unwidened): Also handle ! for_type case for
	INTEGER_CSTs.
	* convert.c (do_narrow): Split out from ...
	(convert_to_integer_1): ... here.  Do not pass final truncation
	type to get_unwidened for TRUNC_DIV_EXPR.

	* gcc.dg/torture/pr80341.c: New testcase.

From-SVN: r246756
2017-04-07 08:20:24 +00:00
Richard Biener 5291ab733b tree-affine.c (wide_int_ext_for_comb): Take type rather than aff_tree.
2017-04-07  Richard Biener  <rguenther@suse.de>

	* tree-affine.c (wide_int_ext_for_comb): Take type rather
	than aff_tree.
	(aff_combination_const): Adjust.
	(aff_combination_scale): Likewise.
	(aff_combination_add_elt): Likewise.
	(aff_combination_add_cst): Likewise.
	(aff_combination_convert): Likewise.
	(add_elt_to_tree): Likewise.  Remove unused argument.
	(aff_combination_to_tree): Adjust calls to add_elt_to_tree.

From-SVN: r246755
2017-04-07 08:04:32 +00:00