2014-11-27  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61634
	* tree-vect-slp.c: Include gimple-walk.h.
	(vect_detect_hybrid_slp_stmts): Rewrite to propagate hybrid
	down the SLP tree for one scalar statement.
	(vect_detect_hybrid_slp_1): New walker function.
	(vect_detect_hybrid_slp_2): Likewise.
	(vect_detect_hybrid_slp): Properly handle pattern statements
	in a pre-scan over all loop stmts.

	* gcc.dg/vect/pr61634.c: New testcase.


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

	PR middle-end/63704
	* alias.c (mems_in_disjoint_alias_sets_p): Remove assert
	and instead return false when !fstrict-aliasing.


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

	PR tree-optimization/64083
	* tree-ssa-threadupdate.c (thread_through_all_blocks): Do not
	forcibly mark loop for removal the wrong way.

	* gcc.dg/torture/pr64083.c: New testcase.


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

	* tree-ssa-sccvn.c (try_to_simplify): Allow
	gimple_fold_stmt_to_constant_1 to follow SSA edges.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218116 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64][test] Mark variable as volatile in vsqrt_f64 test

	* gcc.target/aarch64/simd/vsqrt_f64_1.c: Mark variable volatile.


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