ivopts cost oddities

Bernd Schmidt bernds_cb1@t-online.de
Wed Nov 15 18:06:00 GMT 2006


Ian Lance Taylor wrote:
> Bernd Schmidt <bernds_cb1@t-online.de> writes:
> 
>> --- tree-ssa-loop-ivopts.c	(revision 118853)
>> +++ tree-ssa-loop-ivopts.c	(working copy)
>> @@ -3321,32 +3321,32 @@ multiply_by_cost (HOST_WIDE_INT cst, enu
>>  /* Returns true if multiplying by RATIO is allowed in address.  */
>>  
>>  bool
>> -multiplier_allowed_in_address_p (HOST_WIDE_INT ratio)
>> +multiplier_allowed_in_address_p (HOST_WIDE_INT ratio, enum machine_mode mode)
> 
> I think this needs a comment about the meaning of MODE.  Is it the
> mode of the memory to which the address points?  Or is it the mode of
> the address computation?
> 
> Same in at least one other place.

I've committed a comment update along with the second patch in the
series, which makes sure we use properly aligned memory addresses when
we try to compute the maximum offsets.  On the Blackfin, SImode memrefs
cannot be (reg + 1), only (reg + 4 * n), so previously we'd terminate
the loop immediately and determine that no offsets were allowed at all.

Bootstrapped and regression tested again on i686-linux, committed as 118863.


Bernd
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch3.diff
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061115/4b8e4398/attachment.ksh>


More information about the Gcc-patches mailing list