Commit Graph

137654 Commits

Author SHA1 Message Date
GCC Administrator
7870a3118b Daily bump.
From-SVN: r221871
2015-04-05 00:16:11 +00:00
Jan Hubicka
9a820e8446 invoke.texi (inline-unit-growth): Increase growth to 20%
* invoke.texi (inline-unit-growth): Increase growth to 20%
	* params.def (PARAM_INLINE_UNIT_GROWTH): Likewise.

From-SVN: r221868
2015-04-04 21:07:46 +00:00
Vladimir Makarov
9444692807 re PR target/65647 (GCC won't stop when compile for armv6-m)
2015-04-04  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65647
	* lra-int.h (LRA_MAX_REMATERIALIZATION_PASSES): New.  Add its
	value checking.
	(lra_rematerialization_iter): New.
	* lra.c (lra): Initialize lra_rematerialization_iter.
	Stop updating lra_constraint_new_regno_start after switching of
	inheritance and rematerialization.
	* lra-remat.c (lra_rematerialization_iter): New.
	(lra_remat): Add printing pass iteration.  Do rematerialization
	only first LRA_MAX_REMATERIALIZATION_PASSES iterations.

2015-04-04  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/65647
	* gcc.target/arm/pr65647.c: New.

From-SVN: r221867
2015-04-04 14:35:59 +00:00
Richard Biener
30c5a937e1 re PR tree-optimization/64909 (Missed vectorization with bdver1)
2015-04-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/64909
	PR tree-optimization/65660
	* tree-vectorizer.h (vect_get_known_peeling_cost): Adjust
	to take a cost vector for scalar iteration cost.
	(vect_get_single_scalar_iteration_cost): Likewise.
	* tree-vect-loop.c (vect_get_single_scalar_iteration_cost):
	Compute the scalar iteration cost into a cost vector.
	(vect_get_known_peeling_cost): Use the scalar cost vector to
	account for the cost of the peeled iterations.
	(vect_estimate_min_profitable_iters): Likewise.
	* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost):
	Likewise.

From-SVN: r221866
2015-04-04 10:47:08 +00:00
GCC Administrator
0da0c47dc5 Daily bump.
From-SVN: r221865
2015-04-04 00:16:11 +00:00
Alan Modra
69223faeb3 re PR target/65576 (ICE in gcc.c-torture/compile/pr33855.c)
PR target/65576
	PR target/65240
	* config/rs6000/predicates.md (zero_reg_mem_operand): Exclude
	0.0 constant unless TARGET_VSX.
	* config/rs6000/rs6000.md (extenddftf2_internal): Remove last
	alternative.

From-SVN: r221862
2015-04-04 09:46:26 +10:30
Jan Hubicka
f107227ba7 re PR target/65648 (Bad code due to IRA fails to recognize the clobber in parallel)
PR ipa/65648
	* ipa-inline-transform.c (inline_call): Skip sanity check to work
	around the ICE

From-SVN: r221861
2015-04-03 20:25:01 +00:00
Jan Hubicka
872ceb28a1 re PR ipa/65655 (ICE in speculative_call_info, at cgraph.c:1151)
PR ipa/65655
	* ipa-inline-analysis.c (edge_set_predicate): Do not redirect
	speculative indirect edges to avoid ordering issue.
	* g++.dg/torture/pr65655.C: New testcase.

From-SVN: r221860
2015-04-03 18:19:53 +00:00
Jan Hubicka
133a84abb6 re PR ipa/65076 (16% tramp3d-v4.cpp compile time regression)
PR ipa/65076
	* ipa-inline.c (edge_badness): Add combined size to the denominator.

From-SVN: r221859
2015-04-03 18:09:13 +00:00
Paolo Carlini
a3d94329e9 re PR c++/64085 (ICE on C++14 lambda by-reference capture with an initializer)
/cp
2015-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64085
	* lambda.c (add_capture): Use dependent_type_p for capture by
	reference too.

/testsuite
2015-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64085
	* g++.dg/cpp1y/lambda-init13.C: New.

From-SVN: r221858
2015-04-03 17:23:27 +00:00
Marek Polacek
1dc15b0b9d * g++.dg/cpp0x/pr57101.C: Use proper type for size_t.
From-SVN: r221855
2015-04-03 14:55:21 +00:00
Jakub Jelinek
f74849783e omp-low.c (scan_omp_parallel, [...]): Set TYPE_ARTIFICIAL on the .omp_data* types.
* omp-low.c (scan_omp_parallel, scan_omp_task, scan_omp_target): Set
	TYPE_ARTIFICIAL on the .omp_data* types.

From-SVN: r221853
2015-04-03 15:35:49 +02:00
Ilya Enkovich
a115251c2b cgraphunit.c (cgraph_node::expand_thunk): Don't expand instrumentation thunks.
* cgraphunit.c (cgraph_node::expand_thunk): Don't expand
	instrumentation thunks.

From-SVN: r221852
2015-04-03 09:00:53 +00:00
Ilya Enkovich
fad71ff5e7 i386.c (ix86_expand_call): Avoid nested PARALLEL in returned call value.
* config/i386/i386.c (ix86_expand_call): Avoid nested
	PARALLEL in returned call value.

From-SVN: r221851
2015-04-03 08:51:26 +00:00
Ilya Enkovich
a3d72251cc lto-cgraph.c (input_cgraph_1): Always link instrumented assembler name with original one.
* lto-cgraph.c (input_cgraph_1): Always link instrumented
	assembler name with original one.

From-SVN: r221850
2015-04-03 08:39:29 +00:00
GCC Administrator
fb383fd288 Daily bump.
From-SVN: r221848
2015-04-03 00:16:13 +00:00
Uros Bizjak
fcb8e42940 i386.c (ix86_register_priority): Use AX_REG.
* config/i386/i386.c (ix86_register_priority): Use AX_REG.

From-SVN: r221844
2015-04-02 19:33:22 +02:00
Marek Polacek
894bec6885 re PR c++/65642 ([C++11] GCC rejects valid constant expression)
PR c++/65642
	* constexpr.c (cxx_eval_pointer_plus_expression): Call
	cxx_eval_constant_expression on the first operand.

	* g++.dg/cpp0x/constexpr-fold1.C: New test.
	* g++.dg/cpp0x/constexpr-fold2.C: New test.

From-SVN: r221843
2015-04-02 16:51:27 +00:00
Jason Merrill
37978db4a7 re PR c++/65625 (ICE in make_typename_type, at cp/decl.c:3499)
PR c++/65625
	* decl.c (make_typename_type): Handle seeing a variable template.

From-SVN: r221842
2015-04-02 12:43:02 -04:00
Paolo Carlini
c23a9ec5f4 2015-04-02 Paolo Carlini <paolo.carlini@oracle.com>
Complete commit.

From-SVN: r221841
2015-04-02 15:23:36 +00:00
Uros Bizjak
287044d972 Revert parts of r216820.
* config/i386/i386.md (movqi_internal): Correct type calculation
	for alternatives 3 and 5.

From-SVN: r221840
2015-04-02 14:22:16 +02:00
Jakub Jelinek
b8cd77f40c re PR preprocessor/61977 (powerpc preprocessor breaks on lines that end with "vector")
PR preprocessor/61977
	* lex.c (cpp_peek_token): Temporarily clear pfile->cb.line_change.

	* gcc.target/powerpc/pr61977-1.c: New test.
	* gcc.target/powerpc/pr61977-2.c: New test.

From-SVN: r221839
2015-04-02 13:57:02 +02:00
Jakub Jelinek
860f8be450 re PR preprocessor/61977 (powerpc preprocessor breaks on lines that end with "vector")
PR preprocessor/61977
	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Don't
	predefine __vector/__bool/__pixel macros nor context sensitive
	macros for CLK_ASM.
	* config/spu/spu-c.c (spu_cpu_cpp_builtins): Similarly.

From-SVN: r221838
2015-04-02 13:54:58 +02:00
John David Anglin
166d826fdc pa.c (pa_output_move_double): Directly handle register indexed memory operand.
* config/pa/pa.c (pa_output_move_double): Directly handle register
	indexed memory operand.  Simplify handling of scaled register indexed
	memory operands.

From-SVN: r221835
2015-04-02 11:29:48 +00:00
James Greenhalgh
e61ffb3b5a [Patch] Add myself as AArch64 Port Reviewer
* MAINTAINERS: Add myself as a reviewer for the AArch64 port.

From-SVN: r221834
2015-04-02 10:49:16 +00:00
Kyrylo Tkachov
b16cc4f20c Add myself as reviewer for arm port
* MAINTAINERS: Add myself as an arm port reviewer.

From-SVN: r221833
2015-04-02 10:19:37 +00:00
Ilya Enkovich
512470bb90 re PR driver/65444 (-z bndplt isn't passed to linker for -mmpx when building dynamic objects)
gcc/
	PR driver/65444
	* config/i386/linux-common.h (MPX_SPEC): New.
	(CHKP_SPEC): Add MPX_SPEC.
	* doc/invoke.texi (-fcheck-pointer-boudns): Document
	possible issues with '-z bndplt' support in linker.

libmpx/

	PR driver/65444
	* configure.ac: Add check for '-z bndplt' support
	by linker. Add link_mpx output variable.
	* libmpx.spec.in (link_mpx): New.
	* configure: Regenerate.

From-SVN: r221831
2015-04-02 08:15:49 +00:00
Uros Bizjak
a8caf35149 sync.md (UNSPEC_FILD_ATOMIC, [...]): New.
* config/i386/sync.md (UNSPEC_FILD_ATOMIC, UNSPEC_FIST_ATOMIC): New.
	(loaddi_via_fpu): Use UNSPEC_FILD_ATOMIC.
	(storedi_via_fpu): Use UNSPEC_FIST_ATOMIC.
	* reg-stack.c (get_true_reg): Change UNSPEC_LDA to UNSPEC_FILD_ATOMIC.
	(subst_stack_regs_pat): Change UNSPEC_STA to UNSPEC_FIST_ATOMIC.

From-SVN: r221830
2015-04-02 09:56:05 +02:00
Jan Hubicka
ed6ef4907a lto-cgraph.c (lto_output_node, [...]): Stream split_part.
* lto-cgraph.c (lto_output_node, input_overwrite_node): Stream
	split_part.
	* ipa-inline.c (edge_badness): Add wrapper penalty.
	(sum_callers): Move up.
	(inline_small_functions): Set single_caller.
	* ipa-inline.h (inline_summary): Add single_caller.
	* ipa-split.c (split_function): Set split_part.
	(cgraph_node::create_clone): Do not shadow decl; copy split_part.
	* cgraph.h (cgraph_node): Add split_part.

From-SVN: r221818
2015-04-02 05:14:26 +00:00
GCC Administrator
709d77eab7 Daily bump.
From-SVN: r221817
2015-04-02 00:16:11 +00:00
Paolo Carlini
b4d5e41f1d re PR c++/56100 (spurious -Wshadow warning with local variable in template class)
/cp
2015-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56100
	* pt.c (instantiating_current_function_p): New.
	* name-lookup.c (pushdecl_maybe_friend_1): Use it.
	* cp-tree.h (instantiating_current_function_p): Declare.

/testsuite
2015-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56100
	* g++.dg/warn/Wshadow-8.C: New.
	* g++.dg/warn/Wshadow-9.C: Likewise.
	* g++.dg/warn/Wshadow-10.C: Likewise.
	* g++.dg/warn/Wshadow-11.C: Likewise.

From-SVN: r221814
2015-04-01 21:27:55 +00:00
Uros Bizjak
35238bb505 sync.md (UNSPEC_MOVA): Remove.
* config/i386/sync.md (UNSPEC_MOVA): Remove.
	(atomic_load<mode>): Change operand 0 predicate to
	nonimmediate_operand and fix up the destination when needed.
	Use UNSPEC_LDA.
	(atomic_loaddi_fpu): Use UNSPEC_LDA.
	(atomic_store<mode>): Change operand 1 predicate to
	nonimmendate_operand and move the source to register when needed.
	Use UNSPEC_STA.
	(atomic_store<mode>_1): Use UNSPEC_STA.
	(atomic_storedi_fpu): Change operand 1 to nonimmediate_operand.
	Fix moves from memory operand.  Use UNSPEC_STA.

From-SVN: r221811
2015-04-01 19:36:24 +02:00
Jason Merrill
f87cb0b734 re PR c++/65646 (ICE in invalid syntax)
PR c++/65646
	* decl.c (grokvardecl): Don't call check_explicit_specialization
	for non-template members of a class template.

From-SVN: r221810
2015-04-01 12:36:50 -04:00
Bernd Edlinger
b6dd42a9a8 expmed.c (strict_volatile_bitfield_p): Check that the access will not cross a MODESIZE boundary.
gcc:
2015-04-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * expmed.c (strict_volatile_bitfield_p): Check that the access will
        not cross a MODESIZE boundary.
        (store_bit_field, extract_bit_field): Added assertions in the
        strict volatile bitfields code path.

testsuite:
2015-04-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.dg/pr23623.c: Added aligned attribute.
        * gcc.dg/20141029-1.c: Likewise.
        * gcc.dg/20150306-1.c: New test.

From-SVN: r221809
2015-04-01 16:09:48 +00:00
Marek Polacek
14e51ef293 re PR middle-end/65554 (ICE: verify_gimple failed)
PR c++/65554
	* class.c (finish_struct): Require that the second field of a
	user-defined initializer_list be of size type.

	* g++.dg/cpp0x/initlist93.C: New test.
	* g++.dg/cpp0x/initlist94.C: New test.

From-SVN: r221808
2015-04-01 13:08:05 +00:00
Max Ostapenko
0ff2bf464e re PR target/65624 (ICE in aarch64-builtins.c when expanding 4-argument aarch64 intrinsic.)
2015-04-01  Max Ostapenko  <m.ostapenko@partner.samsung.com>

	PR target/65624

	gcc/
	* config/aarch64/aarch64-builtins.c (aarch64_simd_expand_builtin): Increase
	args array size by one to avoid buffer overflow.

	gcc/testsuite/
	* gcc.target/aarch64/pr65624.c: New test.

From-SVN: r221807
2015-04-01 14:18:03 +03:00
Jan Hubicka
41f669d825 lto-cgraph.c (lto_output_node, [...]): Stream split_part.
* lto-cgraph.c (lto_output_node, input_overwrite_node): Stream
	split_part.
	* ipa-inline.c (edge_badness): Add wrapper penalty.
	(sum_callers): Move up.
	(inline_small_functions): Set single_caller.
	* ipa-inline.h (inline_summary): Add single_caller.
	* ipa-split.c (split_function): Set split_part.
	(cgraph_node::create_clone): Do not shadow decl; copy split_part.
	* cgraph.h (cgraph_node): Add split_part.

	* gcc.dg/ipa/inlinehint-4.c: New testcase.

From-SVN: r221806
2015-04-01 07:41:17 +00:00
GCC Administrator
9fd542c6b5 Daily bump.
From-SVN: r221805
2015-04-01 00:16:13 +00:00
Ian Lance Taylor
2ee920291d Remove some files that were accidentally committed in 2014.
From-SVN: r221802
2015-03-31 19:47:23 +00:00
Alex Velenko
d723bc36dd pr45701-1.c (history_expand_line_internal): Add an extra variable to force stack alignment.
2015-03-31  Alex Velenko  <Alex.Velenko@arm.com>

	* gcc.target/arm/pr45701-1.c (history_expand_line_internal): Add an
	extra variable to force stack alignment.
	* gcc.target/arm/pr45701-2.c (history_expand_line_internal): Add an
	extra variable to force stack alignment.

From-SVN: r221801
2015-03-31 19:00:52 +00:00
Ian Lance Taylor
9f5059b275 go/cmd/go: always link external test packages first
When linking complex packages that use both internal and external tests as well as many dependencies it is critical that the link order be external test package, internal test package, everything else.

This change is a back (forward?) port of the same change that canonical have been maintaining on their fork of the go tool for gccgo. Now that gccgo uses the go tool from upstream, this patch should be applied both to the gofrontend and golang/go repos.

From-SVN: r221800
2015-03-31 17:54:07 +00:00
Marek Polacek
397ad54db1 re PR c++/65390 (ICE in strip_typedefs, at cp/tree.c:1361)
PR c++/65390
	* tree.c (build_cplus_array_type): Use dependent_type_p rather than
	checking for constness.

	* g++.dg/template/pr65390.C: New test.

From-SVN: r221799
2015-03-31 17:35:29 +00:00
Uros Bizjak
9e91e2cd71 re PR target/58945 (Improve atomic_compare_and_swap*_doubleword pattern)
PR target/58945
	* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
	Do not split operands 0 and operands 2 to halfmode.
	(atomic_compare_and_swap<mode>): Update for
	atomic_compare_and_swap<dwi>_doubleword changes.

From-SVN: r221798
2015-03-31 19:06:37 +02:00
Jan Hubicka
36ceb0e3cc tree.c (need_assembler_name_p): Artificial types have no ODR names.
* tree.c (need_assembler_name_p): Artificial types have no ODR
	names.
	* ipa-devirt.c (warn_odr): Do not try to apply ODR cache when
	no caching is done.
	* lto.c (lto_read_decls): Move code registering odr types out
	of TYPE_CANONICAL conditional and also register polymorphic types.

From-SVN: r221797
2015-03-31 17:03:16 +00:00
Martin Liska
12cc8c723e re PR ipa/65557 (ICE: SIGSEGV in hash_table<>::find_slot_with_hash() with -fdevirtualize -fipa-cp -fipa-icf-functions)
Fix PR65557.

	* ipa-icf.c (sem_function::equals_wpa): Check if IPA CP
	has already filled up function summary.
	(sem_item_optimizer::update_hash_by_addr_refs): Likewise.
	* g++.dg/ipa/pr65557.C: New test.

From-SVN: r221796
2015-03-31 16:03:03 +00:00
Richard Biener
78f1b5234a tree-sra.c (create_access_replacement): Drop under-/over-alignment of types.
2015-03-31  Richard Biener  <rguenther@suse.de>

	* tree-sra.c (create_access_replacement): Drop under-/over-alignment
	of types.

From-SVN: r221795
2015-03-31 13:32:59 +00:00
Dominik Vogt
2d38d80934 S/390: Hotpatch: Remove special handling of nested functions.
gcc/
2015-03-31  Dominik Vogt  <vogt@linux.vnet.ibm.com>

	    * config/s390/s390.c (s390_function_num_hotpatch_hw): Allow hotpatching
	    nested functions.
	    (s390_reorg): Adapt to new signature of s390_function_num_hotpatch_hw.
	    (s390_asm_output_function_label): Adapt to new signature of
	    s390_function_num_hotpatch_hw
	    Optimise the code generating assembler output.
	    Add comments to assembler file.

gcc/testsuite/
2015-03-31  Dominik Vogt  <vogt@linux.vnet.ibm.com>

	    * gcc.target/s390/hotpatch-25.c: New test.
	    * gcc.target/s390/hotpatch-1.c: Update test.
	    * gcc.target/s390/hotpatch-10.c: Update test.
	    * gcc.target/s390/hotpatch-11.c: Update test.
	    * gcc.target/s390/hotpatch-12.c: Update test.
	    * gcc.target/s390/hotpatch-13.c: Update test.
	    * gcc.target/s390/hotpatch-14.c: Update test.
	    * gcc.target/s390/hotpatch-15.c: Update test.
	    * gcc.target/s390/hotpatch-16.c: Update test.
	    * gcc.target/s390/hotpatch-17.c: Update test.
	    * gcc.target/s390/hotpatch-18.c: Update test.
	    * gcc.target/s390/hotpatch-19.c: Update test.
	    * gcc.target/s390/hotpatch-2.c: Update test.
	    * gcc.target/s390/hotpatch-21.c: Update test.
	    * gcc.target/s390/hotpatch-22.c: Update test.
	    * gcc.target/s390/hotpatch-23.c: Update test.
	    * gcc.target/s390/hotpatch-24.c: Update test.
	    * gcc.target/s390/hotpatch-3.c: Update test.
	    * gcc.target/s390/hotpatch-4.c: Update test.
	    * gcc.target/s390/hotpatch-5.c: Update test.
	    * gcc.target/s390/hotpatch-6.c: Update test.
	    * gcc.target/s390/hotpatch-7.c: Update test.
	    * gcc.target/s390/hotpatch-8.c: Update test.
	    * gcc.target/s390/hotpatch-9.c: Update test.
	    * gcc.target/s390/hotpatch-compile-16.c: Update test.

From-SVN: r221794
2015-03-31 12:07:06 +00:00
Richard Biener
bed18fbd09 re PR c++/65626 (ICE in fixup_noreturn_call called by tree-ssa-forwprop.c:2492)
2015-03-31  Richard Biener  <rguenther@suse.de>

	PR middle-end/65626
	* tree-cfgcleanup.c (fixup_noreturn_call): Only split the block
	of the noreturn call so it is last and cleanup_control_flow_bb
	can do the CFG part.

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

From-SVN: r221790
2015-03-31 09:34:08 +00:00
Tom de Vries
20f234a8d6 Fix bzero warning in child_setup_tty
2015-03-31  Tom de Vries  <tom@codesourcery.com>

	PR ada/65490
	* terminals.c (child_setup_tty): Fix warning 'argument to sizeof in
	bzero call is the same expression as the destination'.

From-SVN: r221789
2015-03-31 08:30:15 +00:00
Ilya Enkovich
b7e85ee107 re PR target/65531 (ICE: symtab_node::verify failed: Two symbols with same comdat_group are not linked by the same_comdat_group list. with -fcheck-pointer-bounds -mmpx)
gcc/

	PR target/65531
	* ipa-chkp.c (chkp_maybe_create_clone): Don't set
	same_comdat_group for external symbols.
	* symtab.c (symtab_node::verify_symtab_nodes): Avoid
	infinite same_comdat_group traversal loop.

gcc/testsuite/

	PR target/65531
	* gcc.target/i386/mpx/pr65531.cc: New.

From-SVN: r221788
2015-03-31 08:29:28 +00:00