On August 26, 2015 6:08:55 PM GMT+02:00, Alan Lawrence <alan.lawre...@arm.com> 
wrote:
>Richard Biener wrote:
>
>>>> One extra question is does the way we limit total scalarization
>work
>>> well
>>>> for arrays?  I suppose we have either sth like the maximum size of
>an
>>>> aggregate we scalarize or the maximum number of component accesses
>>>> we create?
>>>>
>>> Only the former and that would be kept intact.  It is in fact
>visible
>>> in the context of the last hunk of the patch.
>> 
>> OK.  IIRC the gimplification code also has the latter and also
>considers zeroing the whole aggregate before initializing non-zero
>fields.  IMHO it makes sense to reuse some of the analysis and
>classification routines it has.
>
>Do you mean gimplify_init_constructor? Yes, there's quite a lot of
>logic there 
>;). That feels like a separate patch - and belonging to the
>constant-handling 
>subseries of this series

Yes.

 - as gimplify_init_constructor already deals
>with both 
>record and array types, and I don't see anything there that's
>specifically good 
>for total-scalarization of arrays....?
>
>IOW, do you mean that to block this patch, or can it be separate (I can
>address 
>Martin + Jeff's comments fairly quickly and independently) ?

No, but I'd like this being explores with the init sub series.  We don't want 
two places doing total scalarization of initualizers , gimplification and SRA 
and with different/conflicting heuristics.  IMHO the gimplification total 
scalarization happens too early.

Richard.

>Cheers, Alan


Reply via email to