This is the mail archive of the 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] lno branch merge -- new iv & simple loop analysis


> On Mon, Feb 16, 2004 at 12:14:29AM +0100, Zdenek Dvorak wrote:
> > + struct rtx_iv
> > + struct niter_desc
> It probably doesn't matter much, but I'd like to see the fields
> in these structures rearranged to avoid as much unnecessary 
> padding as convienient.

I have rearranged fields in struct rtx_iv.  Doing this for struct
niter_desc seems useless to me (there is one such structure per loop).

> > + static rtx
> > + lowpart_subreg (enum machine_mode outer_mode, rtx expr,
> > + 		enum machine_mode inner_mode)
> I guess this one isn't quite gen_lowpart, if you ever pass it
> a constant.  Do you?


> Not really correct.  HOST_WIDEST_INT may be wider than HOST_WIDE_INT.
> The mode may be wide enough that immed_double_const is reqired.

I have added check for this to iv_number_of_iterations and abort
to get_mode_bounds; there are several places where I rely on that
the returned value is a const_int, so I would rather postpone handling
it till it shows up to be a problem.


Attachment: diff_new_iv.diff.gz
Description: Binary data

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