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]

Re: fix alpha c++ failures


On Tue, Jul 10, 2001 at 03:06:30PM -0400, John David Anglin wrote:
> +	      /* Widen LOW and HIGH to the same width as INDEX.  */
> +	      rtx new_low = convert_modes (mode, imode,
> +					   expand_expr (node->low, NULL_RTX,
> +							VOIDmode, 0),
> +					   unsignedp);
> +	      rtx new_high = convert_modes (mode, imode,
> +					    expand_expr (node->high, NULL_RTX,
> +							 VOIDmode, 0),
> +					    unsignedp);

I'd rather we did the expansion via CONVERT_EXPR.  That lets us fold

> +	      new_bound = expand_binop (mode, sub_optab, new_high, new_low,
>  				        NULL_RTX, unsignedp, OPTAB_WIDEN);

this one so that it generates no code.  Use type_for_mode to get the
type to convert to.

If you can't get past current PA lossage, I can look at this on Alpha...


r~


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