Commit Graph

144099 Commits

Author SHA1 Message Date
Richard Biener ef31818424 re PR tree-optimization/69579 (gcc ICE at -O3 and __sigsetjmp with “tree check: expected ssa_name, have integer_cst in compute_optimized_partition_bases”)
2016-02-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/69579
	* tree-ssa-loop-ivcanon.c (propagate_constants_for_unrolling):
	Do not propagate through abnormal PHI results.

	* gcc.dg/setjmp-6.c: New testcase.

From-SVN: r233036
2016-02-01 12:39:04 +00:00
Bernd Edlinger 571512d5f5 Don't define guard macros when doing #include_next in math.h and stdlib.h
2016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	PR libstdc++/69581
	* include/c_compatibility/math.h: Move header guards.
	* include/c_compatibility/stdlib.h: Likewise.

From-SVN: r233035
2016-02-01 11:13:40 +00:00
Eric Botcazou 04bd58cf16 * postreload.c (reload_cse_simplify): Remove dead code.
From-SVN: r233034
2016-02-01 11:04:22 +00:00
Jakub Jelinek 654745e6f9 re PR rtl-optimization/69570 (if-conversion bug on i?86)
PR rtl-optimization/69570
	* ifcvt.c (bb_ok_for_noce_convert_multiple_sets): Return true only
	if there is more than one set, not if there is a single set.

	* g++.dg/opt/pr69570.C: New test.

From-SVN: r233033
2016-02-01 09:47:27 +01:00
Richard Henderson e6c0c44b5b re PR rtl-optimization/69535 (wrong code with -O -fno-tree-bit-ccp -fno-tree-reassoc due to use of uninitialised value)
PR rtl-opt/69535

  * combine.c (make_compound_operation): When looking through a
  subreg, make sure to re-extend to the width of the outer mode.

From-SVN: r233032
2016-01-31 23:32:01 -08:00
John David Anglin 2c00553806 re PR testsuite/69584 (FAIL: gcc.dg/pr67964.c (test for excess errors))
PR testsuite/69584
	* gcc.dg/tree-ssa/sra-17.c: Fix regexps to work on hpux.
	* gcc.dg/tree-ssa/sra-18.c: Likewise.

From-SVN: r233030
2016-02-01 01:12:23 +00:00
John David Anglin f67cb8fe7b re PR target/68741 (FAIL: tr1/8_c_compatibility/cstdio/functions.cc (test for excess errors))
PR target/68741
	* inclhack.def (hpux_vsscanf): New fix.
	* fixincl.x: Regenerated.
	* tests/base/stdio.h [HPUX_VSSCANF_CHECK]: New test.

From-SVN: r233029
2016-02-01 00:54:22 +00:00
John David Anglin 61083a4ba7 re PR debug/68244 (FAIL: g++.dg/parse/parens3.C -std=gnu++98 (internal compiler error))
PR debug/68244
	* g++.dg/parse/parens3.C: Use register "4" on hppa.

From-SVN: r233028
2016-02-01 00:38:17 +00:00
John David Anglin 6ff3f09a1d vector-5.c: Add -fno-common option on hppa*-*-hpux*.
* gcc.dg/tree-ssa/vector-5.c: Add -fno-common option on hppa*-*-hpux*.

From-SVN: r233027
2016-02-01 00:27:44 +00:00
GCC Administrator 47ba7fb432 Daily bump.
From-SVN: r233026
2016-02-01 00:16:16 +00:00
Joseph Myers e64f7af926 Regenerate .pot files.
gcc/po:
	* gcc.pot: Regenerate.

libcpp/po:
	* cpplib.pot: Regenerate.

From-SVN: r233023
2016-01-31 15:54:00 +00:00
Joseph Myers 1c6e009864 * fi.po: Update.
From-SVN: r233021
2016-01-31 15:48:42 +00:00
Jakub Jelinek 75a27d3584 re PR c++/68763 (ICE: in verify_unstripped_args, at cp/pt.c:1132)
PR c++/68763

	* tree.c (strip_typedefs) [FUNCTION_TYPE]: Avoid building a new
	function type if nothing is changing.

Co-Authored-By: Jason Merrill <jason@redhat.com>

From-SVN: r233020
2016-01-31 09:53:26 -05:00
Jason Merrill 6978c505d0 re PR c++/69009 (ICE in instantiate_decl, at cp/pt.c:21511)
PR c++/69009

	* pt.c (partial_specialization_p, impartial_args): New.
	(instantiate_decl): Call impartial_args.

From-SVN: r233019
2016-01-31 06:53:04 -05:00
Jason Merrill b1568582a0 Fix abi-tag16.C.
* mangle.c (maybe_check_abi_tags): New.
	(write_guarded_var_name): Call it.
	(mangle_ref_init_variable): Call check_abi_tags.

From-SVN: r233018
2016-01-31 06:52:56 -05:00
Jason Merrill b676a0798f Fix abi-tag17.C.
* pt.c (lookup_template_class_1): Don't share TYPE_ATTRIBUTES
	between template and instantiation.

From-SVN: r233017
2016-01-31 06:52:48 -05:00
Paul Thomas 0c221916d6 re PR fortran/67564 (Segfault on sourced allocattion statement with class(*) arrays)
2016-01-31  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/67564
	* trans-expr.c (gfc_conv_procedure_call): For the vtable copy
	subroutines, add a string length argument, when the actual
	argument is an unlimited polymorphic class object.

2016-01-31  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/67564
	* gfortran.dg/allocate_with_source_17.f03: New test.

From-SVN: r233016
2016-01-31 10:22:05 +00:00
GCC Administrator 03e79d4fa1 Daily bump.
From-SVN: r233015
2016-01-31 00:16:15 +00:00
Jakub Jelinek db7a281800 re PR middle-end/69546 (wrong code with -O and simple int128 arithmetics)
PR tree-optimization/69546
	* wide-int.cc (wi::divmod_internal): For unsigned division
	where both operands fit into uhwi, if o1 is 1 and o0 has
	msb set, if divident_prec is larger than bits per hwi,
	clear another quotient word and return 2 instead of 1.
	Similarly for remainder with msb in HWI set, if dividend_prec
	is larger than bits per hwi.

	* gcc.dg/torture/pr69546.c: New test.

From-SVN: r233012
2016-01-30 19:04:13 +01:00
Paul Thomas e520d5f02a re PR fortran/69566 ([OOP] Failure of SELECT TYPE with unlimited polymorphic function result)
2016-01-30  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/69566
	* trans-expr.c (gfc_conv_procedure_call): Correct expression
	for 'ulim_copy', which was missing a test for 'comp'.

2016-01-30  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/69566
	* gfortran.dg/unlimited_polymorphic_25.f03: New test.

From-SVN: r233011
2016-01-30 17:44:56 +00:00
Martin Sebor 343c05d39f PR r++/68490 - error initializing a structure with a flexible array membe
gcc/testsuite/ChangeLog:
2016-01-30  Martin Sebor  <msebor@redhat.com>                                   
                                                                                
        PR c++/68490                                                            
        * g++.dg/ext/flexary10.C: New test.

From-SVN: r233010
2016-01-30 10:30:32 -07:00
Dominique d'Humieres d6c3a53920 re PR fortran/66707 (Endless compilation on wrong usage of common)
2016-01-30  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR fortran/66707
	gfortran.dg/common_23.f90: New test.

From-SVN: r233008
2016-01-30 15:07:19 +01:00
Bill Schmidt 52d72fcd1d re PR target/65546 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c)
2016-01-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/65546
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c: Correct
	condition being checked, and disable it when the target supports
	misaligned loads and stores.

From-SVN: r233006
2016-01-30 01:18:43 +00:00
GCC Administrator d5555f15a4 Daily bump.
From-SVN: r233005
2016-01-30 00:16:12 +00:00
Martin Jambor fe621379bc [hsa] Atomic assess memory model fixes
2016-01-29  Martin Jambor  <mjambor@suse.cz>

	* hsa-gen.c (get_memory_order_name): Mask with MEMMODEL_BASE_MASK.
	Use short lowercase names.
	(get_memory_order): Mask with MEMMODEL_BASE_MASK.  Support
	MEMMODEL_CONSUME with acquire semantics and MEMMODEL_SEQ_CST with
	acq_rel one.  Protect warning agains segfaults if
	get_memory_order_name returns NULL.
	(gen_hsa_ternary_atomic_for_builtin): Support with MEMMODEL_SEQ_CST
	with release semantics.  Do not warn if get_memory_order already did.
	(gen_hsa_insns_for_call): Support with MEMMODEL_SEQ_CST with acquire
	semantics.  Fix check for relaxed or acquire semantics.  Do not warn
	if get_memory_order already did.

From-SVN: r233000
2016-01-29 23:53:28 +01:00
Jakub Jelinek 3a5d2ba4fc re PR debug/69518 (Flag -g causes "error: type variant has different TYPE_VFIELD")
PR debug/69518
	* c-decl.c (finish_struct): Clear C_TYPE_INCOMPLETE_VARS in
	all type variants, not just TYPE_MAIN_VARIANT.

	* gcc.dg/torture/pr69518.c: New test.

From-SVN: r232998
2016-01-29 21:37:25 +01:00
Sebastian Pop c661a43de3 document that isl-0.16 is supported
* config/isl.m4: Add comments about isl-0.16.
	* configure: Regenerate.

gcc/
	* doc/install.texi: Document that isl-0.16 is supported.

From-SVN: r232997
2016-01-29 20:26:04 +00:00
Vladimir Makarov 9eb1ca69e1 re PR target/69299 (-mavx performance degradation with r232088)
2016-01-29  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/69299
	* config/i386/constraints.md (Bm): Describe as special memory
	constraint.
	* doc/md.texi (DEFINE_SPECIAL_MEMORY_CONSTRAINT): Describe it.
	* genoutput.c (main): Process DEFINE_SPECIAL_MEMORY_CONSTRAINT.
	* genpreds.c (struct constraint_data): Add is_special_memory.
	(have_special_memory_constraints, special_memory_start): New
	static vars.
	(special_memory_end): Ditto.
	(add_constraint): Add new arg is_special_memory.  Add code to
	process its true value.  Update have_special_memory_constraints.
	(process_define_constraint): Pass the new arg.
	(process_define_register_constraint): Ditto.
	(choose_enum_order): Process special memory.
	(write_tm_preds_h): Generate enum const CT_SPECIAL_MEMORY and
	function insn_extra_special_memory_constraint.
	(main): Process DEFINE_SPECIAL_MEMORY_CONSTRAINT.
	* gensupport.c (process_rtx): Process
	DEFINE_SPECIAL_MEMORY_CONSTRAINT.
	* ira-costs.c (record_reg_classes): Process CT_SPECIAL_MEMORY.
	* ira-lives.c (single_reg_class): Use
	insn_extra_special_memory_constraint.
	* ira.c (ira_setup_alts): Process CT_SPECIAL_MEMORY.
	* lra-constraints.c (process_alt_operands): Ditto.
	(curr_insn_transform): Use insn_extra_special_memory_constraint.
	* recog.c (asm_operand_ok, preprocess_constraints): Process
	CT_SPECIAL_MEMORY.
	* reload.c (find_reloads): Ditto.
	* rtl.def (DEFINE_SPECIFAL_MEMORY_CONSTRAINT): New.
	* stmt.c (parse_input_constraint): Use
	insn_extra_special_memory_constraint.

From-SVN: r232993
2016-01-29 18:47:17 +00:00
H.J. Lu 6bbacdb544 Revert revsion 229087 changes in lra-spills.c
r229087, which caused PR 69530, was supposed to fix PR 67609.  r229458
has made r229087 unnecessary.

gcc/

	PR target/69530
	* lra-splill.c (lra_final_code_change): Revert r229087 by
	removing all sub-registers.

gcc/testsuite/

	PR target/69530
	* gcc.target/i386/pr69530.c: New test.

From-SVN: r232991
2016-01-29 10:03:42 -08:00
Steve Ellcey af932cdb8a re PR target/65604 (MIPS -fno-delayed-branch generates incorrect code with -mcheck-zero-division)
PR target/65604
	* gcc.target/mips/div-delay.c: New test.

From-SVN: r232986
2016-01-29 16:31:18 +00:00
Steve Ellcey 87a5ab58c5 re PR target/65604 (MIPS -fno-delayed-branch generates incorrect code with -mcheck-zero-division)
PR target/65604
	* config/mips/mips.c (mips_output_division): Check flag_delayed_branch.

From-SVN: r232985
2016-01-29 16:29:58 +00:00
Jakub Jelinek 33e89989f6 re PR target/69551 (Wrong code with single element vector insert)
PR target/69551
	* config/i386/i386.c (ix86_expand_vector_set) <case V4SImode>: For
	SSE1, copy target into the temporary reg first before recursing
	on it.

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

From-SVN: r232982
2016-01-29 15:14:56 +01:00
Jakub Jelinek 26658b7c9e re PR target/66137 (ICE with -ffixed-ebp)
PR target/66137
	* gcc.target/i386/pr66137.c: New test.

From-SVN: r232981
2016-01-29 15:07:40 +01:00
Andrew Bennett 401116b5a4 p5600-bonding.c (dg-options): Force the test to be always built for p5600.
testsuite/
2016-01-29  Andrew Bennett  <andrew.bennett@imgtec.com>

       * gcc.target/mips/p5600-bonding.c (dg-options): Force the test to be
       always built for p5600.
       * gcc.target/mips/mips.exp (mips-dg-options): Add support for the
       isa=p5600 dg-option.

From-SVN: r232980
2016-01-29 13:54:53 +00:00
H.J. Lu 96db298a71 Use vm in sse2_cvtps2pd<mask_name>
sse2_cvtps2pd<mask_name> has

(define_insn "sse2_cvtps2pd<mask_name>"
  [(set (match_operand:V2DF 0 "register_operand" "=v") 
        (float_extend:V2DF
          (vec_select:V2SF
            (match_operand:V4SF 1 "vector_operand" "vBm") 
            (parallel [(const_int 0) (const_int 1)]))))]

The memory operand size is 8 bytes (2 floats).  We should use vm instead
of vBm.

	* config/i386/sse.md (sse2_cvtps2pd<mask_name>): Replace vBm
	with vm.

From-SVN: r232979
2016-01-29 05:03:51 -08:00
Martin Jambor 86b3a101ff Add myself as a hsa maintainer
2016-01-29  Martin Jambor  <mjambor@suse.cz>

	* MAINTAINERS (hsa maintainers): Add myself.

From-SVN: r232978
2016-01-29 13:47:56 +01:00
Jonathan Wakely 382ead25f4 Test __cplusplus instead of __GXX_EXPERIMENTAL_CXX0X__
* ginclude/stdarg.h: Test __cplusplus instead of
	__GXX_EXPERIMENTAL_CXX0X__.

From-SVN: r232977
2016-01-29 12:29:42 +00:00
Richard Biener d4abfcc561 re PR middle-end/69547 (no-op array initializer emits an empty loop)
2016-01-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/69547
	* tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1):
	Do not mark clobbers necessary.
	(mark_all_reaching_defs_necessary_1): Likewise.

	* g++.dg/tree-ssa/pr69547.C: New testcase.

From-SVN: r232976
2016-01-29 11:21:19 +00:00
Jakub Jelinek 16b77b321e re PR debug/66869 (-Wunused-function no longer warns for static declarations without definition)
PR debug/66869
	* decl.c (wrapup_globals_for_namespace): Warn about unused static
	function declarations.

	* g++.dg/warn/Wunused-function2.C: New test.

From-SVN: r232975
2016-01-29 12:14:42 +01:00
Jonathan Wakely f597d5f73c Fix Cygwin bootstrap error due to TM symbols
PR libstdc++/69506
	* config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.

From-SVN: r232974
2016-01-29 10:52:08 +00:00
Dominik Vogt 6eb422f0cf S/390: Use %qs in error messages.
gcc/ChangeLog

	* config/s390/s390-c.c (s390_resolve_overloaded_builtin): Format
	declaration name with %qs and print it in both error messages.  Also
	fix indentation.

From-SVN: r232973
2016-01-29 10:17:03 +00:00
Dominik Vogt 647ffdb76f PR other/69006: S/390: Fix extra newlines after diagnostics.
gcc/ChangeLog

	PR other/69006
	* config/s390/s390-c.c (s390_resolve_overloaded_builtin): Remove
	trailing blank line from error message.

From-SVN: r232972
2016-01-29 10:12:11 +00:00
Dominik Vogt a1c9546419 S/390: Require a hardware vector support for test to succeed.
The test case works on S/390 too, but only with -march=z13 or later
(i.e. if Gcc can make use of hardware vector support).  Otherwise the
optimization gets too complex.  The attached patch forces Gcc to use
-march=z13 instead of xfail'ing the test on S/390.

gcc/testsuite/ChangeLog

	* gcc.dg/tree-ssa/ssa-dom-cse-2.c: Require a hardware vector support for
	test to succeed.

From-SVN: r232971
2016-01-29 10:09:13 +00:00
Jonathan Wakely 00ec75a0a2 PR c++/69462: Provide FLT_EVAL_METHOD and DECIMAL_DIG in float.h.
gcc/ChangeLog

	PR c++/69462
	* ginclude/float.h: Also provide FLT_EVAL_METHOD and DECIMAL_DIG
	for C++-11.

From-SVN: r232970
2016-01-29 10:03:26 +00:00
Marek Polacek 5453bfed48 re PR c++/69509 (infinite loop compiling a VLA in a recursive constexpr function)
PR c++/69509
	PR c++/69516
	* constexpr.c (cxx_eval_array_reference): Give the "array subscript
	out of bound" error earlier.
	* init.c (build_vec_init): Change NE_EXPR into GT_EXPR.  Update the
	commentary.

	* g++.dg/ext/constexpr-vla2.C: New test.
	* g++.dg/ext/constexpr-vla3.C: New test.
	* g++.dg/ubsan/vla-1.C: Remove dg-shouldfail.

From-SVN: r232969
2016-01-29 09:25:14 +00:00
Richard Biener 452ec2a5ec re PR middle-end/69537 (Incorrect -Wmaybe-uninitialized warning with enum variable)
2016-01-29  Richard Biener  <rguenther@suse.de>

	PR middle-end/69537
	* match.pd: Allow all integral types when simplifying a
	widening or sign-changing conversion.

	* gcc.dg/uninit-21.c: New testcase.

From-SVN: r232968
2016-01-29 08:36:04 +00:00
Sebastian Pop 8dffffd00c PR69545: revert patch
Revert 'assert instead of silently failing code gen' that produces an ICE with isl-0.14.

From-SVN: r232966
2016-01-29 04:31:40 +00:00
Patrick Palka e9f690692b Fix cp_binding_level reuse logic
gcc/cp/ChangeLog:

	* name-lookup.c (begin_scope): After reusing a cp_binding_level
	structure, update free_binding_level before the structure's
	level_chain field gets cleared, not after.

From-SVN: r232965
2016-01-29 01:51:03 +00:00
GCC Administrator 3a7d8a85a3 Daily bump.
From-SVN: r232963
2016-01-29 00:16:13 +00:00
Jakub Jelinek 4bda59463f re PR pch/68176 (all pch tests fail on eglibc systems (with bits/predefs.h))
PR pch/68176
	* files.c (_cpp_find_file): Set file->implicit_preinclude even if
	included from file->implicit_preinclude header.

From-SVN: r232956
2016-01-28 23:35:20 +01:00