Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218853 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog:
2014-12-17  Dehao Chen  <dehao@google.com>

        * auto-profile.c (afdo_annotate_cfg): Invoke update_ssa in the right
        place.
        (auto_profile): Recompute inline summary after processing cgraph node.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218854 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/62178
	* tree-ssa-loop-ivopts.c (cheaper_cost_with_cand): New function.
	(iv_ca_replace): New function.
	(try_improve_iv_set): New parameter try_replace_p.
	Break local optimal fixed-point by calling iv_ca_replace.
	(find_optimal_iv_set_1): Pass new argument to try_improve_iv_set.

	gcc/testsuite/ChangeLog
	PR tree-optimization/62178
	* gcc.target/aarch64/pr62178.c: New test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218855 138bc75d-0d04-0410-961f-82ee72b054a4
Add myself to MAINTAINERS under Writer After Approval


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218856 138bc75d-0d04-0410-961f-82ee72b054a4
Include target-utils.exp in boehm-gc testing

	* testsuite/lib/boehm-gc.exp: Load target-utils.exp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218857 138bc75d-0d04-0410-961f-82ee72b054a4
Change mpx effective-target test into link test

	* lib/mpx-dg.exp (check_effective_target_mpx): Change into link test.
	Add main.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218859 138bc75d-0d04-0410-961f-82ee72b054a4
Fix for PR ipa/64146

	PR ipa/64146
	* ipa-icf.c (sem_function::merge): Check for
	decl_binds_to_current_def_p is newly added to merge operation.
	* g++.dg/ipa/pr64146.C: New test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218860 138bc75d-0d04-0410-961f-82ee72b054a4
Fix for PR bootstrap/63573.

	PR bootstrap/63573
	* tree-inline.c (remap_gimple_stmt): Handle gimple_call_from_thunk_p
	predicate.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218861 138bc75d-0d04-0410-961f-82ee72b054a4
Fix for PR64330.

	PR tree-optimization/64330
	* ipa-icf.c (sem_variable::parse): Add checking
	for externally visible symbols and do not introduce
	an alias for an external declaration.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218864 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Generalize code alignment

2014-12-18  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* config/aarch64/aarch64-protos.h (tune-params): Add code alignment
	tuning parameters.
	* gcc/config/aarch64/aarch64.c (generic_tunings): Add code alignment
	tuning parameters.
	(cortexa53_tunings): Likewise.
	(cortexa57_tunings): Likewise.
	(thunderx_tunings): Likewise.
	(aarch64_override_options): Use new alignment tunings.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218865 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Add TARGET_MIN_DIVISIONS_FOR_RECIP_MUL

2014-12-18  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* gcc/config/aarch64/aarch64.c (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL):
	Define.
	(aarch64_min_divisions_for_recip_mul): New function.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218866 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Simplify patterns for sshr_n_[us]64 intrinsic

        * config/aarch64/aarch64.md (enum "unspec"): Remove UNSPEC_SSHR64.

        * config/aarch64/aarch64-simd.md (aarch64_ashr_simddi): Change shift
        amount to 63 if was 64.
        (aarch64_sshr_simddi): Remove.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218867 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Simplify+improve patterns for ushr(d?)_n_u64 intrinsic

gcc/:
	* config/aarch64/aarch64-simd.md (aarch64_lshr_simddi): Handle shift
	by 64 by moving const0_rtx.
	(aarch64_ushr_simddi): Delete.

	* config/aarch64/aarch64.md (enum unspec): Delete UNSPEC_USHR64.

gcc/testsuite/:

        * gcc.target/aarch64/ushr64_1.c: Remove scan-assembler "ushr...64".



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218868 138bc75d-0d04-0410-961f-82ee72b054a4
X86-64: Add -mskip-rax-setup

The Linux kernel never passes floating point arguments around, vararg
functions or not. Hence no vector registers are ever used when calling a
vararg function.  But gcc still dutifully emits an "xor %eax,%eax" before
each and every call of a vararg function.  Since no callee use that for
anything, these instructions are redundant.

This patch adds the -mskip-rax-setup option to skip setting up RAX
register when SSE is disabled and there are no variable arguments passed
in vector registers.  Since RAX register is used to avoid unnecessarily
saving vector registers on stack when passing variable arguments, the
impacts of this option are callees may waste some stack space, misbehave
or jump to a random location.  GCC 4.4 or newer don't those issues,
regardless the RAX register value since they don't check the RAX register
value when SSE is disabled.

gcc/

	* config/i386/i386.c (ix86_expand_call): Skip setting up RAX
	register for -mskip-rax-setup when there are no parameters
	passed in vector registers.
	* config/i386/i386.opt (mskip-rax-setup): New option.
	* doc/invoke.texi: Document -mskip-rax-setup.

gcc/testsuite/

	* gcc.target/i386/amd64-abi-7.c: New tests.
	* gcc.target/i386/amd64-abi-8.c: Likwise.
	* gcc.target/i386/amd64-abi-9.c: Likwise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218870 138bc75d-0d04-0410-961f-82ee72b054a4
/cp
2014-12-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60955
	* pt.c (struct warning_sentinel): Move it...
	* cp-tree.h: ... here.
	* semantics.c (force_paren_expr): Use it.

/testsuite
2014-12-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60955
	* g++.dg/warn/register-parm-1.C: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218871 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-18  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/64291
	* lra-remat.c (bad_for_rematerialization_p): Add UNPSEC_VLOATILE.
	(create_cands): Process only output reload insn with potential
	cands.

2014-12-18  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/64291
	* testsuite/gcc.target/i386/pr64291-[12].c: New tests.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218874 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-18  Vladimir Makarov  <vmakarov@redhat.com>

	* lra-constraints.c (lra-constraints.c): Exchange places of sclass
	and dclass.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218875 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/64251
	* decl2.c (mark_used): Don't mark if in_template_function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218876 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/64352
	* pt.c (tsubst_copy_and_build): Pass complain to mark_used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218877 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59204
	* g++.dg/cpp0x/sfinae53.C: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218878 138bc75d-0d04-0410-961f-82ee72b054a4