* symtab.c (symtab_node::equal_address_to): New function.
	* cgraph.h (symtab_node::equal_address_to): Declare.
	* fold-const.c (fold_comparison, fold_binary_loc): Use it.

	* c-family/c-common.c: Refuse weaks for symbols that can not change
	visibility.

	* gcc.dg/addr_equal-1.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218462 138bc75d-0d04-0410-961f-82ee72b054a4
[ARM,AArch64][testsuite] Fix vaddl and vaddw tests

2014-12-07  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vaddhn.c: Actually execute
	the test.
	* gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Actually execute
	the test. Fix expected output.
	* gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218463 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/aarch64/aarch64-simd.md (clrsb<mode>2, popcount<mode>2): New
        patterns.
        * config/aarch64/aarch64-simd-builtins.def (clrsb, popcount): New
        builtins.
        * config/aarch64/arm_neon.h (vcls_s8, vcls_s16, vcls_s32, vclsq_s8,
        vclsq_s16, vclsq_s32, vcnt_p8, vcnt_s8, vcnt_u8, vcntq_p8, vcntq_s8,
        vcntq_u8): Rewrite using builtin functions.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218464 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/testsuite/
	* gcc.target/h8300/h8300.exp: Fix duplicated text.
	* gcc.target/h8300/pragma-isr.c: Likewise.
	* gcc.target/h8300/pragma-isr2.c: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218465 138bc75d-0d04-0410-961f-82ee72b054a4
	PR testsuite/64038
	* gcc.dg/ipa/ipa-icf-5.c: Require c99_runtime.  Add c99_runtime options.
	* gcc.dg/ipa/ipa-icf-7.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218467 138bc75d-0d04-0410-961f-82ee72b054a4
Merge remote-tracking branch 'gnu/trunk' into 5.0.0
	* compare-elim.c: Fix head comment.
	(conforming_compare): Remove redundant test.
	(can_eliminate_compare): New function extracted from...
	(before_dom_children): ...here.  Use it, replace direct uses of
	flag_non_call_exceptions and tidy up.
	(maybe_select_cc_mode): Tidy up.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218468 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	PR target/50751
	* config/sh/sh.md (extendqihi2): Allow only for TARGET_SH1.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218469 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/testsuite/
	PR target/53513
	* gcc.target/sh/pr54602-4.c: Fix matching of rte-nop sequence.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218475 138bc75d-0d04-0410-961f-82ee72b054a4
don't ICE when section attribute is used on things in comdats

gcc/

	PR ipa/63621
	* symtab.c (symtab_node::verify): Check for section attribute before
	asserting something isn't in a section and a comdat group.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218476 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-08  Richard Biener  <rguenther@suse.de>

	* builtins.c (fold_builtin_0): Remove unused ignore parameter.
	(fold_builtin_1): Likewise.
	(fold_builtin_3): Likewise.
	(fold_builtin_varargs): Likewise.
	(fold_builtin_2): Likewise.  Do not fold stpcpy here.
	(fold_builtin_n): Adjust.
	(fold_builtin_stpcpy): Move to gimple-fold.c.
	(gimple_fold_builtin_stpcpy): Moved and gimplified from builtins.c.
	(gimple_fold_builtin): Fold stpcpy here.


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

	* tree-chkp.c (chkp_call_returns_bounds_p): New.
	(chkp_build_returned_bound): Use zero bounds as
	returned by calls not returning bounds.

gcc/testsuite/

	* gcc.target/i386/chkp-bndret.c: New.
	* gcc.target/i386/chkp-strchr.c: New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218478 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree-chkp.c (chkp_build_returned_bound): Don't predict
	return bounds for strchr calls.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218479 138bc75d-0d04-0410-961f-82ee72b054a4
Enable const permutations for V64QImode.

gcc/
	* config/i386/i386.c (expand_vec_perm_broadcast_1): Handle v64qi.
	(expand_vec_perm_vpermi2_vpshub2): New.
	(ix86_expand_vec_perm_const_1): Use it.
	(ix86_vectorize_vec_perm_const_ok): Handle v64qi.
	* config/i386/sse.md (VEC_PERM_CONST): Add v64qi.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218482 138bc75d-0d04-0410-961f-82ee72b054a4
Enable non-const v64qi permutations.

gcc/
	* config/i386/i386.c (ix86_expand_vec_perm_vpermi2): Handle v64qi.
	* config/i386/sse.md (VEC_PERM_AVX2): Add v64qi.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218483 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/aarch64/arm_neon.h (vrecpe_u32, vrecpeq_u32): Rewrite using
        builtin functions.
        (vfma_f32, vfmaq_f32, vfmaq_f64, vfma_n_f32, vfmaq_n_f32, vfmaq_n_f64,
        vfms_f32, vfmsq_f32, vfmsq_f64): Likewise.
        (vhsub_s8, vhsub_u8, vhsub_s16, vhsub_u16, vhsub_s32, vhsub_u32,
        vhsubq_s8, vhsubq_u8, vhsubq_s16, vhsubq_u16, vhsubq_s32, vhsubq_u32,
        vsubhn_s16, vsubhn_u16, vsubhn_s32, vsubhn_u32, vsubhn_s64, vsubhn_u66,
        vrsubhn_s16, vrsubhn_u16, vrsubhn_s32, vrsubhn_u32, vrsubhn_s64,
        vrsubhn_u64, vsubhn_high_s16, vsubhn_high_u16, vsubhn_high_s32,
        vsubhn_high_u32, vsubhn_high_s64, vsubhn_high_u64, vrsubhn_high_s16,
        vrsubhn_high_u16, vrsubhn_high_s32, vrsubhn_high_u32, vrsubhn_high_s64,
        vrsubhn_high_u64): Likewise.
        * config/aarch64/iterators.md (VDQ_SI): New mode iterator.
        * config/aarch64/aarch64.md (define_c_enum "unspec"): Add UNSPEC_URECPE.
        * config/aarch64/aarch64-simd.md (aarch64_urecpe<mode>): New pattern.
        * config/aarch64/aarch64-simd-builtins.def (shsub, uhsub, subhn, rsubhn,
        subhn2, rsubhn2, urecpe): New builtins.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218484 138bc75d-0d04-0410-961f-82ee72b054a4
	PR go/64198
compiler: Don't crash on invalid ++.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218485 138bc75d-0d04-0410-961f-82ee72b054a4
Bics instruction generation for aarch64

gcc/

	* config/aarch64/aarch64.md (and_one_cmpl<mode>3_compare0_no_reuse):
	New define_insn.
	* (and_one_cmpl_<SHIFT:optab><mode>3_compare0_no_reuse):
	Likewise.

gcc/testsuite/

	* gcc.target/aarch64/bics_3.c : New testcase.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218486 138bc75d-0d04-0410-961f-82ee72b054a4
2014-12-08  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR ipa/64049
        * ipa-polymorphic-call.c
        (pa_polymorphic_call_context::ipa_polymorphic_call): Allow RESULT_DECL.

testsuite/ChangeLog:
2014-12-08  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR ipa/64049
        * g++.dg/ipa/pr64049.h: New.
        * g++.dg/ipa/pr64049-1.C: New.
        * g++.dg/ipa/pr64049-2.C: New.


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