[RFA] [PR tree-optimization/33562] [PATCH 1/4] Byte tracking in DSE
Richard Biener
richard.guenther@gmail.com
Sat Dec 17 09:48:00 GMT 2016
On December 16, 2016 7:43:22 PM GMT+01:00, Jakub Jelinek <jakub@redhat.com> wrote:
>On Fri, Dec 16, 2016 at 06:35:58PM +0000, Joseph Myers wrote:
>> On Thu, 15 Dec 2016, Jeff Law wrote:
>>
>> > This version attacks the problem by improving DSE to track stores
>to memory at
>> > a byte level. That allows us to determine if a series of stores
>completely
>> > covers an earlier store (thus making the earlier store dead).
>>
>> Question: suppose you have an assignment for a struct with padding,
>then
>> stores for all the elements. Does it detect that the original
>assignment
>> is dead (because there is no need to copy padding on struct
>assignment)?
In GIMPLE struct assignment is equal to memcpy, so that info is lost after leaving frontend realm.
>We fold memcpy into struct assignment early, does the same apply also
>to
>memcpy? Or shall we fold memcpy into struct assignment only when there
>is
>no padding (or find different IL representation of that)?
If we want to change that we can use a char[] type for copying on GIMPLE.
Richard.
> Jakub
More information about the Gcc-patches
mailing list