Commit Graph

137296 Commits

Author SHA1 Message Date
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
Ilya Enkovich ce52d8847e re PR target/65602 (gcc.target/i386/mpx tests FAIL)
PR target/65602
	* gcc.target/i386/mpx/alloca-1-lbv.c (mpx_test): Use
	__builtin_alloca instead of alloca.
	* gcc.target/i386/mpx/alloca-1-nov.c (mpx_test): Likewise.
	* gcc.target/i386/mpx/alloca-1-ubv.c (mpx_test): Likewise.
	* lib/mpx-dg.exp (check_effective_target_mpx): Add wrapper
	check.

From-SVN: r221787
2015-03-31 08:24:38 +00:00
Jakub Jelinek b626318e12 re PR plugins/61176 (plugin builds including gimple.h not building)
PR plugins/61176
	* Makefile.in (install-plugin): Add all gcc/*.{h,def} files
	automatically to $headers.

From-SVN: r221786
2015-03-31 07:31:57 +02:00
GCC Administrator 4a37fb99ea Daily bump.
From-SVN: r221785
2015-03-31 00:16:11 +00:00
Ian Lance Taylor a7b09e17ad compiler: Mark builtin calls with bad types as errors.
Fixes golang/go/#10285.

From-SVN: r221782
2015-03-31 00:10:46 +00:00
Jakub Jelinek 00a0ea64ee re PR ipa/65610 (Compare debug failure with -g3 -fsanitize=undefined -fno-sanitize=vptr -O3)
PR ipa/65610
	* ipa-utils.h (inlined_polymorphic_ctor_dtor_block_p): Declare.
	* ipa-polymorphic-call.c (inlined_polymorphic_ctor_dtor_block_p): New
	function.
	(decl_maybe_in_construction_p, noncall_stmt_may_be_vtbl_ptr_store):
	Use it.
	* ipa-prop.c (param_type_may_change_p): Likewise.
	* tree-ssa-live.c: Include ipa-utils.h and its dependencies.
	(remove_unused_scope_block_p): Add in_ctor_dtor_block
	argument.  Before inlining, preserve
	inlined_polymorphic_ctor_dtor_block_p blocks and the outermost block
	with FUNCTION_DECL BLOCK_ABSTRACT_ORIGIN inside of them.  Adjust
	recursive calls.
	(remove_unused_locals): Adjust remove_unused_scope_block_p caller.

	* g++.dg/ubsan/pr65610.C: New test.

From-SVN: r221781
2015-03-30 23:56:02 +02:00
Marek Polacek ef4bac7802 re PR c++/65398 ([C++11] GCC rejects constexpr variable definitions with valid initialization)
PR c++/65398
	* constexpr.c (cxx_fold_indirect_ref): Don't perform the
	 *(&A[i] p+ j) => A[i + j] transformation here.
	(cxx_eval_pointer_plus_expression): New function.
	(cxx_eval_constant_expression): Use it here.

	* g++.dg/cpp0x/pr65398-2.C: New test.

From-SVN: r221777
2015-03-30 18:39:17 +00:00
Jakub Jelinek 6c384511a3 re PR middle-end/65597 (ICE in build_outer_var_ref, at omp-low.c:1043)
PR fortran/65597
	* trans-openmp.c (gfc_trans_omp_do): For !simple simd with explicit
	linear clause for the iterator set OMP_CLAUSE_LINEAR_NO_COPYIN.
	For implcitly added !simple OMP_CLAUSE_LINEAR set it too.  Use step 1
	instead of the original step on the new iterator - count.

	* testsuite/libgomp.fortran/pr65597.f90: New test.

From-SVN: r221776
2015-03-30 19:54:05 +02:00
Jonathan Wakely 744e26e71e re PR libstdc++/65630 (operator+ for new std::string not exported)
PR libstdc++/65630
	* config/abi/pre/gnu.ver: Export operator+ for new strings.
	* testsuite/21_strings/basic_string/operators/char/65630.cc: New.
	* testsuite/21_strings/basic_string/operators/wchar_t/65630.cc: New.

From-SVN: r221775
2015-03-30 18:52:37 +01:00