2014-10-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63476
	* tree-ssa-pre.c (struct bb_bitmap_sets): Add vop_on_exit member.
	(BB_LIVE_VOP_ON_EXIT): New define.
	(create_expression_by_pieces): Assign VUSEs to stmts.
	(compute_avail): Track BB_LIVE_VOP_ON_EXIT.
	(pass_pre::execute): Assert virtual SSA form is up-to-date
	after insertion.

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


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216065 138bc75d-0d04-0410-961f-82ee72b054a4
	PR fortran/59488
	* trans-openmp.c (gfc_omp_predetermined_sharing): Return
	OMP_CLAUSE_DEFAULT_SHARED for parameters or vtables.

	* gfortran.dg/gomp/pr59488-1.f90: New test.
	* gfortran.dg/gomp/pr59488-2.f90: New test.


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

	PR tree-optimization/63379
	* tree-vect-slp.c (vect_get_constant_vectors): Do not compute
	a neutral operand for min/max when it is not a reduction chain.

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


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216070 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/63464
	* tree-switch-conversion.c (struct case_bit_test): Remove
	hi and lo fields, add wide_int mask field.
	(emit_case_bit_tests): Add MAXVAL argument, rewrite uses of
	hi/lo fields into wide_int mask operations, optimize by pretending
	minval to be 0 if maxval is small enough.
	(process_switch): Adjust caller.


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