gcc/gcc ChangeLog expr.c genopinit.c optabs.c ...

dorit@gcc.gnu.org dorit@gcc.gnu.org
Tue Jun 21 09:02:00 GMT 2005


CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	dorit@gcc.gnu.org	2005-06-21 09:02:00

Modified files:
	gcc            : ChangeLog expr.c genopinit.c optabs.c optabs.h 
	                 tree-inline.c tree-pretty-print.c 
	                 tree-vect-generic.c tree-vect-transform.c 
	                 tree.def 
	gcc/config/rs6000: altivec.md 
	gcc/testsuite  : ChangeLog 
	gcc/testsuite/gcc.dg/vect: vect-reduc-1.c vect-reduc-2.c 
	                           vect-reduc-3.c vect.exp 
	gcc/testsuite/lib: target-supports.exp 
Added files:
	gcc/testsuite/gcc.dg/vect: fast-math-vect-reduc-5.c 
	                           fast-math-vect-reduc-7.c 
	                           trapv-vect-reduc-4.c 
	                           vect-reduc-1char.c 
	                           vect-reduc-1short.c 
	                           vect-reduc-2char.c 
	                           vect-reduc-2short.c vect-reduc-6.c 

Log message:
	* genopinit.c (vec_shl_optab, vec_shr_optab): Initialize new optabs.
	(reduc_plus_optab): Removed.  Replcaed with...
	(reduc_splus_optab, reduc_uplus_optab): Initialize new optabs.
	* optabs.c (optab_for_tree_code): Return reduc_splus_optab or
	reduc_uplus_optab instead of reduc_plus_optab.
	(expand_vec_shift_expr): New function.
	(init_optabs): Initialize new optabs. Remove initialization of
	reduc_plus_optab.
	(optab_for_tree_code): Return vec_shl_optab/vec_shr_optab
	for VEC_LSHIFT_EXPR/VEC_RSHIFT_EXPR.
	* optabs.h (OTI_reduc_plus): Removed. Replaced with...
	(OTI_reduc_splus, OTI_reduc_uplus): New.
	(reduc_plus_optab): Removed.  Replcaed with...
	(reduc_splus_optab, reduc_uplus_optab): New optabs.
	(vec_shl_optab, vec_shr_optab): New optabs.
	(expand_vec_shift_expr): New function declaration.
	
	* tree.def (VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR): New tree-codes.
	* tree-inline.c (estimate_num_insns_1): Handle new tree-codes.
	* expr.c (expand_expr_real_1): Handle new tree-codes.
	* tree-pretty-print.c (dump_generic_node, op_symbol, op_prio): Likewise.
	* tree-vect-generic.c (expand_vector_operations_1): Add assert.
	
	* tree-vect-transform.c (vect_create_epilog_for_reduction): Add two
	alternatives for generating reduction epilog code.
	(vectorizable_reduction): Don't fail of direct reduction support is
	not available.
	(vectorizable_target_reduction_pattern): Likewise.
	
	* config/rs6000/altivec.md (reduc_smax_v4si, reduc_smax_v4sf,
	reduc_umax_v4si, reduc_smin_v4si, reduc_smin_v4sf, reduc_umin_v4si,
	reduc_plus_v4si, reduc_plus_v4sf): Removed.
	(vec_shl_<mode>, vec_shr_<mode>, altivec_vsumsws_nomode,
	reduc_splus_<mode>, reduc_uplus_v16qi): New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.9205&r2=2.9206
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&r1=1.796&r2=1.797
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/genopinit.c.diff?cvsroot=gcc&r1=1.93&r2=1.94
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/optabs.c.diff?cvsroot=gcc&r1=1.281&r2=1.282
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/optabs.h.diff?cvsroot=gcc&r1=1.56&r2=1.57
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-inline.c.diff?cvsroot=gcc&r1=1.194&r2=1.195
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-pretty-print.c.diff?cvsroot=gcc&r1=2.62&r2=2.63
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-vect-generic.c.diff?cvsroot=gcc&r1=2.1&r2=2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-vect-transform.c.diff?cvsroot=gcc&r1=2.27&r2=2.28
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree.def.diff?cvsroot=gcc&r1=1.117&r2=1.118
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/rs6000/altivec.md.diff?cvsroot=gcc&r1=1.38&r2=1.39
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.5664&r2=1.5665
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/fast-math-vect-reduc-5.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/fast-math-vect-reduc-7.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/trapv-vect-reduc-4.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-1char.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-1short.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-2char.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-2short.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-6.c.diff?cvsroot=gcc&r1=1.1&r2=1.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-1.c.diff?cvsroot=gcc&r1=1.4&r2=1.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-2.c.diff?cvsroot=gcc&r1=1.4&r2=1.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect-reduc-3.c.diff?cvsroot=gcc&r1=1.4&r2=1.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/vect/vect.exp.diff?cvsroot=gcc&r1=1.10&r2=1.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/lib/target-supports.exp.diff?cvsroot=gcc&r1=1.62&r2=1.63



More information about the Gcc-cvs mailing list