This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [patch] Fixed-point patch 7/10


Mark Mitchell wrote:
> > 
> >   Based on your review, I attached the updated patch
> > which includes these changes:
> > 
> > 1. Use integer_zerop and integer_onep in "convert_to_fixed".
> > 2. New comments in "expand_expr_real_1" to explain that
> >    because "expand_mult", "expand_divmod", and 
> "exapnd_shift" don't work
> >    for sat/non-sat fixed-point operations, for fixed-point modes we
> >    jump to the label of binop.
> > 3. New changes in genopinit.c, because of the new method to 
> initialize
> > instructions.
> 
> This version is OK.
> 

  Because of the recent change in optabs.c, I need to modify my patch.
The changes are in optabs.c to utilize the new method to initialize 
library functions.

  Is this patch ok?  Thanks a lot!

Regards,
Chao-ying

(Updated gcc/ChangeLog for optabs.c)
2007-09-05  Chao-ying Fu  <fu@mips.com>

	* optabs.c (optab_for_tree_code): For *DIV_EXPR, LSHIFT_EXPR,
	PLUS_EXPR, MINUS_EXPR, MULT_EXPR, NEGATE_EXPR, return signed or
	unsigned saturation optabs, when type is saturating.
	(shift_optab_p): Return true for SS_ASHIFT or US_ASHIFT.
	(expand_fixed_convert): New function.
	(gen_fixed_libfunc, gen_signed_fixed_libfunc,
	gen_unsigned_fixed_libfunc, gen_int_fp_fixed_libfunc,
	gen_int_fp_signed_fixed_libfunc, gen_int_fixed_libfunc,
	gen_int_signed_fixed_libfunc, gen_int_unsigned_fixed_libfunc,
	gen_fract_conv_libfunc, gen_fractuns_conv_libfunc,
	gen_satfract_conv_libfunc, gen_satfractuns_conv_libfunc): New
	functions.
	(init_optabs): Initialize ssadd_optab, usadd_optab, sssub_optab,
	ussub_optab, ssmul_optab, usmul_optab, ssmadd_widen_optab,
	usmadd_widen_optab, ssmsub_widen_optab, usmsub_widen_optab,
	ssdiv_optab, usdiv_optab, ssashl_optab, usashl_optab, ssneg_optab,
	usneg_optab, fract_optab, fractuns_optab, satfract_optab,
	satfractuns_optab.
	Initialize fixed-point libraries, including add, ssadd, usadd, sub,
	sssub, ussub, mul, ssmul, usmul, div, ssdiv, udiv, usdiv, ashl,
	ssashl, usashl, ashr, lshr, neg, ssneg, usneg, cmp, fract, satfract,
	fractuns, satfractuns.

Attachment: changes.diff
Description: changes.diff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]