145084 Commits

Author SHA1 Message Date
Kyrylo Tkachov
6b32fd17a6 [ARM] PR driver/70132: Avoid double fclose in driver-arm.c
PR driver/70132
	* config/arm/driver-arm.c (host_detect_local_cpu): Reorder exit logic
	to not call fclose twice on file.

From-SVN: r234419
2016-03-23 10:16:31 +00:00
Martin Liska
7397fce2f7 Copy shadow argument conditionally (PR hsa/70337)
PR hsa/70337
	* plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
	argument just in case a dispatched kernel uses that argument.

From-SVN: r234418
2016-03-23 09:59:51 +00:00
Jakub Jelinek
0179520a83 re PR tree-optimization/70354 (Wrong code with -O3 -march=broadwell and -march=skylake-avx512.)
PR tree-optimization/70354
	* tree-vect-patterns.c (vect_recog_vector_vector_shift_pattern): If
	oprnd0 is wider than oprnd1 and there is a cast from the wider
	type to oprnd1, mask it with the mask of the narrower type.

	* gcc.dg/vect/pr70354-1.c: New test.
	* gcc.dg/vect/pr70354-2.c: New test.
	* gcc.target/i386/avx2-pr70354-1.c: New test.
	* gcc.target/i386/avx2-pr70354-2.c: New test.

From-SVN: r234417
2016-03-23 10:52:00 +01:00
Jakub Jelinek
7da7269a69 re PR target/70321 (STV generates less optimized code)
PR target/70321
	* config/i386/i386.md (*anddi3_doubleword, *<code>di3_doubleword):
	Optimize TARGET_STV splitters, if high or low word of last argument
	is 0 or -1.

From-SVN: r234416
2016-03-23 10:49:12 +01:00
Bernd Edlinger
bfd84e6ba5 Makefile.am (install-freestanding-headers): Add concept_check.h and move.h to the installed headers.
2016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * include/Makefile.am (install-freestanding-headers): Add
        concept_check.h and move.h to the installed headers.
        * include/Makefile.in: Regenerated.
        * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
        freestanding implementations.
        * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
        that this macro has no effect for freestanding implementations.
        * doc/html/manual/using_macros.html: Likewise.

From-SVN: r234414
2016-03-23 00:41:52 +00:00
GCC Administrator
9a607978a2 Daily bump.
From-SVN: r234413
2016-03-23 00:16:13 +00:00
Jeff Law
75bb14d7cc re PR target/70232 (excessive stack usage with -O2)
PR target/70232
	tree-ssa-threadbackward.c
	(fsm_find_control_statement_thread_paths): Correctly distinguish
	between old style jump threads vs FSM jump threads.

	PR target/70232
	* gcc.dg/tree-ssa/pr70232.c: New test.

From-SVN: r234409
2016-03-22 15:32:34 -06:00
Michael Meissner
104cdaf14f re PR libgcc/70363 (PowerPC __float128 to long double doesn't link if built with an assember without ISA 3.0 support)
2016-03-22  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR libgcc/70363
	* config/rs6000/extendkftf2-sw.c (__extendkftf2_sw): If libgcc was
	built with an assembler that does not support ISA 3.0
	instructions, rename __extendkftf2_sw to __extendkftf2.

From-SVN: r234408
2016-03-22 21:05:43 +00:00
Ilya Enkovich
72c9526d3d re PR target/70302 (crash on valid code at -O2 and -O3 in 32-bit mode on x86_64-linux-gnu (in convert_op, at config/i386/i386.c:3414))
2016-03-22  Ilya Enkovich  <enkovich.gnu@gmail.com>

	PR target/70302
	* config/i386/i386.c (scalar_chain::convert_op): Support
	uninitialized register usage case.

	PR target/70302
	* gcc.target/i386/pr70302.c: New test.

From-SVN: r234406
2016-03-22 13:00:14 -06:00
Richard Biener
a3ca1bc5bd re PR tree-optimization/70251 (Wrong code with -O3 -march=skylake-avx512.)
2016-03-22  Richard Biener  <rguenther@suse.de>

	PR middle-end/70251
	* genmatch.c (gen_transform): Adjust last parameter to a three-state
	int...
	(capture::gen_transform): ... to change behavior when substituting
	a condition into cond or not-cond expr context.
	(dt_simplify::gen_1): Adjust.
	* gimple-match-head.c: Include gimplify.h for unshare_expr.
	* match.pd (A + (B vcmp C ? 1 : 0) -> A - (B vcmp C)): Revert
	last change and instead change to
	A + (B vcmp C ? 1 : 0) -> A - (B vcmp C ? -1 : 0).
	(A - (B vcmp C ? 1 : 0) -> A + (B vcmp C)): Likewise.

	* g++.dg/torture/pr70251.C: New testcase.

From-SVN: r234405
2016-03-22 14:38:42 +00:00
Anthony Green
ec613b6634 Fix endianness issue for moxiebox
From-SVN: r234404
2016-03-22 14:25:44 +00:00
David Malcolm
5c240f4db3 PR c/69993: improvements to wording of -Wmisleading-indentation
gcc/c-family/ChangeLog:
	PR c/69993
	* c-indentation.c (warn_for_misleading_indentation): Rewrite the
	diagnostic text, reversing the order of the warning and note so
	that they appear in source order.

gcc/testsuite/ChangeLog:
	PR c/69993
	* c-c++-common/Wmisleading-indentation-3.c: New test, based on
	Wmisleading-indentation.c.
	* c-c++-common/Wmisleading-indentation.c: Update thoughout to
	reflect change to diagnostic text and order of messages.
	* gcc.dg/plugin/location-overflow-test-2.c: Likewise.

From-SVN: r234403
2016-03-22 14:20:49 +00:00
David Edelsohn
80f6631ba0 * g++.dg/ext/java-3.C: Don't compile on AIX.
From-SVN: r234402
2016-03-22 09:46:09 -04:00
Richard Biener
9a10956c4b re PR target/70333 (Test miscompiled with -O0.)
2016-03-22  Richard Biener  <rguenther@suse.de>

	PR middle-end/70333
	* fold-const.c (extract_muldiv_1): Properly perform multiplication
	in the wide type.

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

From-SVN: r234401
2016-03-22 13:23:00 +00:00
Kirill Yukhin
380d99c9aa Remove duplicated AVX-512VL bit check.
gcc/
	* config/i386/i386.c (def_builtin): Remove duplicated functionality.

From-SVN: r234400
2016-03-22 13:17:11 +00:00
Ilya Enkovich
6cedf92249 re PR target/70290 (-mavx512vl breaks parsing of C++ vector condition)
gcc/cp/

	PR target/70290
	* call.c (build_conditional_expr_1): Always use original
	condition type for vector type checks and build.

gcc/testsuite/

	PR target/70290
	* g++.dg/ext/pr70290.C: New test.

From-SVN: r234399
2016-03-22 12:31:12 +00:00
Martin Liska
7d36fe985c Fix ChangeLog entries for PR ipa/70306
From-SVN: r234398
2016-03-22 11:31:53 +00:00
Kirill Yukhin
cd6c27ac21 re PR target/70325 (ICE on __builtin_ia32_storedquqi256_mask)
PR target/70325
gcc/
	* config/i386/i386.c (def_builtin): Handle
	OPTION_MASK_ISA_AVX512VL to be and-ed with other
	bits.
	(const struct builtin_description bdesc_special_args[]):
	Remove duplicate ISA bits.
gcc/testsuite/
	* gcc.target/i386/pr70325.c: New test.

From-SVN: r234395
2016-03-22 11:09:03 +00:00
Jakub Jelinek
b01915ed16 re PR target/70329 (wrong code with -mavx512bw and 64byte vectors)
PR target/70329
	* config/i386/i386.c (ix86_expand_vecop_qihi): Don't bother computing
	d.perm[i] for i >= d.nelt.  If not full_interleave, compute d.perm[i]
	in a way that works also for AVX512BW.

	* gcc.target/i386/avx512bw-pr70329-1.c: New test.
	* gcc.target/i386/avx512bw-pr70329-2.c: New test.

From-SVN: r234394
2016-03-22 09:28:49 +01:00
Jakub Jelinek
4e3e2cf17d re PR target/70300 (ICE: in extract_constrain_insn, at recog.c:2190 (insn does not satisfy its constraints) with -mtune=amdfam10 -mavx512bw)
PR target/70300
	* config/i386/i386.md (cvtsd2ss splitter): Unpack in destination
	instead of source if operands[1] is xmm16 and above and
	!TARGET_AVX512VL.  Use avx512f_vec_dupv16sf_1 instead of
	vec_interleave_lowv4sf if we need to unpack xmm16 and above.

	* gcc.target/i386/pr70300.c: New test.

From-SVN: r234393
2016-03-22 09:14:24 +01:00
Jakub Jelinek
4cde512c84 re PR c++/70295 (bogus -Wnonnull-compare for "dynamic_cast<const FuSelection *>(this) != nullptr")
PR c++/70295
	* gimplify.c (gimplify_modify_expr): Call gimple_set_no_warning
	on assign if (*from_p) is a comparison, set it to
	TREE_NO_WARNING (*from_p).

	* c-c++-common/nonnull-1.c (func): Remove parens around cp4 != 0.
	(func2): New function for cond with parens, xfail warning for c++.
	* g++.dg/warn/Wnonnull-compare-8.C: New test.

From-SVN: r234392
2016-03-22 09:11:14 +01:00
Patrick Palka
16f6d7dc5c Fix PR c++/70096 (wrong code for pointer-to-member-function copy)
gcc/cp/ChangeLog:

	PR c++/70096
	* pt.c (tsubst_decl): Clear the DECL_MODE of the new decl.

gcc/testsuite/ChangeLog:

	PR c++/70096
	* g++.dg/template/ptrmem30.C: New test.

From-SVN: r234391
2016-03-22 02:02:01 +00:00
Patrick Palka
a3e2b43831 Fix PR c++/70204 (ICE in non_const_var_error)
gcc/cp/ChangeLog:

	PR c++/70204
	* constexpr.c (non_const_var_error): Check
	DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P.

gcc/testsuite/ChangeLog:

	PR c++/70204
	* g++.dg/cpp0x/constexpr-70204a.C: New test.
	* g++.dg/cpp0x/constexpr-70204b.C: New test.

From-SVN: r234390
2016-03-22 00:30:57 +00:00
GCC Administrator
b9bcad15fb Daily bump.
From-SVN: r234389
2016-03-22 00:16:14 +00:00
Richard Henderson
ad77920598 re PR middle-end/70273 (FAIL: g++.dg/ext/label13a.C -std=gnu++98 execution test / scan-assembler _ZN1CC4Ev)
PR c++/70273

  * decl.c (notice_forced_label_r): New.
  (cp_finish_decl): Use it.

From-SVN: r234386
2016-03-21 16:03:56 -07:00
Jason Merrill
683b810150 re PR c++/70285 (ICE on valid code on x86_64-linux-gnu: verify_gimple failed)
PR c++/70285
	* cp-gimplify.c (cp_fold) [COND_EXPR]: Handle bit-fields.

From-SVN: r234384
2016-03-21 17:13:06 -04:00
Jakub Jelinek
11b6a02e91 re PR rtl-optimization/70326 (ICE: RTL check: expected elt 3 type 'e' or 'u', have '0' (rtx note) in PATTERN, at rtl.h:1440)
PR middle-end/70326
	* lra.c (restore_scratches): Ignore deleted insns.

	* gcc.dg/pr70326.c: New test.

From-SVN: r234383
2016-03-21 22:04:32 +01:00
Marc Glisse
b94078834d re PR tree-optimization/70317 (folding x<=x to true for large vectors, ignoring nans)
PR tree-optimization/70317
	* match.pd (cmp @0 @0): Pass @0 instead of TYPE_MODE (TREE_TYPE (@0))
	to HONOR_NANS.

	* gcc.dg/pr70317.c: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r234382
2016-03-21 22:03:44 +01:00
Uros Bizjak
4a148e19be re PR target/70327 (ICE: in extract_insn, at recog.c:2287 (unrecognizable insn) with -mavx512ifma and v4ti argument)
PR target/70327
	* config/i386/i386.md (movxi): Use ix86_expand_vector_move instead
	of ix86_expand_move.
	(movoi): Ditto.
	(movti): Use general_operand for operand 1 predicate.

testsuite/ChangeLog:

	PR target/70327
	* gcc.target/i386/pr70327.c: New test.

From-SVN: r234380
2016-03-21 20:56:50 +01:00
Martin Liska
60d15bae0c HSA: enhance dump output
* hsa-dump.c (dump_hsa_insn_1): dump default branch of SBR
	insns.
	(dump_hsa_symbol): Dump BRIG offset of hsa_symbols.

From-SVN: r234379
2016-03-21 19:39:27 +00:00
Martin Liska
2a85ddbbf1 Skip static ctors/dtors in IPA ICF (PR ipa/70306)
* gcc.dg/ipa/pr70306.c: New test.
	* ipa-icf.c (sem_function::parse): Skip static
	constructors and destructors.

From-SVN: r234378
2016-03-21 19:33:33 +00:00
Andre Vieira
9a72f5f6df attr-align1.c: Skip if M-profile.
2016-03-21  Andre Vieira  <andre.simoesdiasvieira@arm>

    gcc/testsuite/
    * gcc.target/arm/attr-align1.c: Skip if M-profile.
    * gcc.target/arm/attr-align3.c: Likewise.
    * gcc.target/arm/attr_arm.c: Likewise.
    * gcc.target/arm/flip-thumb.c: Likewise.

From-SVN: r234373
2016-03-21 15:58:41 +00:00
Jakub Jelinek
6b36694859 re PR target/70296 (Incorrect handling of vector X; if X is function-like macro)
PR target/70296
	* include/cpplib.h (cpp_fun_like_macro_p): New prototype.
	* macro.c (cpp_fun_like_macro_p): New function.

	* config/rs6000/rs6000-c.c (rs6000_macro_to_expand): If IDENT is
	function-like macro, peek following token(s) if it is followed
	by CPP_OPEN_PAREN token with optional padding in between, and
	if not, don't treat it like a macro.

	* gcc.target/powerpc/altivec-36.c: New test.

From-SVN: r234371
2016-03-21 16:41:13 +01:00
Thomas Schwinge
c600d691f3 [nvptx] Don't emit sorry for the stabs debug format
* config/nvptx/nvptx.c (nvptx_option_override): Don't emit sorry
	for the stabs debug format.

Co-Authored-By: Alexander Monakov <amonakov@ispras.ru>

From-SVN: r234370
2016-03-21 16:31:50 +01:00
Richard Biener
2fac8c142e re PR tree-optimization/70310 (wrong code with vector compare at -O0)
2016-03-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/70310
	* tree-vect-generic.c (expand_vector_condition): Fold the built
	condition.

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

From-SVN: r234369
2016-03-21 13:50:50 +00:00
Kirill Yukhin
e9bde85499 re PR target/70293 ([ICE, AVX-512] Wrong reg constraints in vec_dup)
PR target/70293

gcc/
	* config/i386 (define_insn "*vec_dup<mode>"/AVX2): Block
	third alternative for AVX-512VL target,

gcc/testsuite/
	* gcc.target/i386/pr70293.c: New test.

From-SVN: r234363
2016-03-21 10:51:04 +00:00
Martin Liska
c1db25ac14 Retry to emit global variables in HSA (PR hsa/70234)
PR hsa/70234
	* hsa-brig.c (emit_function_directives): Mark unemitted
	global variables for emission.
	* hsa-gen.c (hsa_symbol::hsa_symbol): Initialize a new flag.
	(get_symbol_for_decl): Likewise.
	* hsa.h (struct hsa_symbol): New flag.

From-SVN: r234362
2016-03-21 10:27:53 +00:00
Richard Biener
56bbfaf62c re PR tree-optimization/70288 (ICE with -O1 -fno-tree-dominator-opts)
2016-03-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/70288
	* tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Make sure
	we do not estimate unsimplified all-constant conditionals or
	switches as optimized away.

	* gcc.dg/torture/pr70288-1.c: New testcase.
	* gcc.dg/torture/pr70288-2.c: Likewise.

From-SVN: r234361
2016-03-21 09:11:37 +00:00
Andrey Belevantsev
3eee49ed0d re PR rtl-optimization/69307 (wrong code with -O2 -fselective-scheduling @ armv7a)
PR rtl-optimization/69307
        * gcc.target/arm/pr69307.c: New test.

From-SVN: r234360
2016-03-21 10:54:36 +03:00
Andrey Belevantsev
8e7816b466 re PR rtl-optimization/69102 (ICE: in move_op_ascend, at sel-sched.c:6138 with -fselective-scheduling2)
gcc/
        PR rtl-optimization/69102
        * sched-deps.c (sched_analyze_insn): Do not set last_args_size field
        when we have a readonly dependency context.

testsuite/

        PR rtl-optimization/69102
        * gcc.c-torture/compile/pr69102.c: New test.

From-SVN: r234359
2016-03-21 10:52:05 +03:00
GCC Administrator
d816052f17 Daily bump.
From-SVN: r234358
2016-03-21 00:16:25 +00:00
GCC Administrator
75b4aa92d3 Daily bump.
From-SVN: r234355
2016-03-20 00:16:15 +00:00
Jerry DeLisle
5803aa7c28 re PR fortran/69043 (Trying to include a directory causes an infinite loop)
2016-03-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/69043
	* scanner.c (load_file): Update to use S_ISREG macro.

From-SVN: r234352
2016-03-19 20:28:38 +00:00
GCC Administrator
1ee37b83cc Daily bump.
From-SVN: r234350
2016-03-19 00:16:17 +00:00
Jason Merrill
86461cad6f re PR c++/70139 (-fno-elide-constructor makes static std::regex to throw)
PR c++/70139
	* constexpr.c (cxx_eval_call_expression): Fix trivial copy.

From-SVN: r234345
2016-03-18 16:16:05 -04:00
Jeff Law
14d7d4be52 re PR rtl-optimization/70263 (ICE at -O1 and above in both 32-bit and 64-bit modes on x86_64-linux-gnu (segmentation fault))
PR rtl-optimization/70263
	* ira.c (memref_used_between_p): Assert we found END in the insn chain.
	(update_equiv_regs): When trying to move a store to after the insn
	that sets the source of the store, make sure the store occurs after
	the insn that sets the source of the store.  When successful note
	the REG_EQUIV note created in the dump file.

	PR rtl-optimization/70263
	* gcc.c-torture/compile/pr70263-1.c: New test.
	* gcc.target/i386/pr70263-2.c: New test.

From-SVN: r234344
2016-03-18 13:30:20 -06:00
David Wohlferd
0249ef0bfa David Wohlferd's patch to document more issues with basic asms
* doc/extend.texi: Document more potential problems with basic asms.

From-SVN: r234343
2016-03-18 19:12:10 +00:00
Bernd Schmidt
5c6a601cd2 Fix PR70278, a problem with the previous split_reg change
PR rtl-optimization/70278
	* lra-constraints.c (split_reg): Handle the case where biggest_mode is
	VOIDmode.

testsuite/
	* gcc.dg/torture/pr70278.c: New test.
	* gcc.target/arm/pr70278.c: New test.

From-SVN: r234342
2016-03-18 19:09:08 +00:00
David Malcolm
4bbf545b8b PR c/70281: C FE: fix uninitialized range for __builtin_types_compatible_p
gcc/c/ChangeLog:
	PR c/70281
	* c-parser.c (c_parser_postfix_expression): Set the source range
	for uses of "__builtin_types_compatible_p".

gcc/testsuite/ChangeLog:
	PR c/70281
	* gcc.dg/plugin/diagnostic-test-expressions-1.c
	(test_builtin_types_compatible_p): New test function.
	* gcc.dg/pr70281.c: New test case.

From-SVN: r234340
2016-03-18 17:45:42 +00:00
Uros Bizjak
f2f48c6c60 * libsupc++/guard.cc: Revert my last commit.
From-SVN: r234336
2016-03-18 16:44:44 +01:00