r193882 - in /trunk/gcc: ChangeLog c-family/Cha...

rguenth@gcc.gnu.org rguenth@gcc.gnu.org
Wed Nov 28 09:27:00 GMT 2012


Author: rguenth
Date: Wed Nov 28 09:27:10 2012
New Revision: 193882

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=193882
Log:
2012-11-28  Richard Biener  <rguenther@suse.de>

	PR c/35634
	* gimple.h (gimplify_self_mod_expr): Declare.
	* gimplify.c (gimplify_self_mod_expr): Export.  Take a different
	type for performing the arithmetic in.
	(gimplify_expr): Adjust.
	* tree-vect-loop-manip.c (vect_can_advance_ivs_p): Strip
	sign conversions we can re-apply after adjusting the IV.

	c-family/
	* c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions
	here and use a type with proper overflow behavior for types that would
	need to be promoted for the arithmetic.

	* gcc.dg/torture/pr35634.c: New testcase.
	* g++.dg/torture/pr35634.C: Likewise.
	* gcc.dg/vect/pr18536.c: Mark worker function noinline.

Added:
    trunk/gcc/testsuite/g++.dg/torture/pr35634.C
    trunk/gcc/testsuite/gcc.dg/torture/pr35634.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/c-family/ChangeLog
    trunk/gcc/c-family/c-gimplify.c
    trunk/gcc/gimple.h
    trunk/gcc/gimplify.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/vect/pr18536.c
    trunk/gcc/tree-vect-loop-manip.c



More information about the Gcc-cvs mailing list