Handling aliasing memory accesses in gimple/ssa
Kyrill Tkachov
kyrylo.tkachov@foss.arm.com
Tue May 10 13:52:00 GMT 2016
On 10/05/16 14:46, Richard Biener wrote:
> On Tue, May 10, 2016 at 3:41 PM, Kyrill Tkachov
> <kyrylo.tkachov@foss.arm.com> wrote:
>> Hi all,
>>
>> I'm taking a stab at fixing PR 22141 by merging adjacent stores into wider
>> stores in a late gimple pass.
>>
>> My current plan is to go through all the assignments in a basic block and
>> keep track of
>> LHS expressions that are COMPONENT_REF, BIT_FIELD_REF, ARRAY_REF or
>> ARRAY_RANGE_REF until
>> we encounter an expression that affects the recorded stores or a mergeable
>> store that aliases with
>> any of the preceeding loads. My question is how to express that question in
>> gimple/tree-ssa?
>>
>> Is taking get_alias_set of the two expressions that I want to compare and
>> checking alias_sets_conflict_p enough?
> That's too conservative. You want to use stmt_may_clobber_ref_p /
> ref_maybe_used_by_stmt_p
> and likely feed both with the "base" you want to perform the merging with.
Thanks!
I think that's exactly what I need.
> Richard.
>
>> Thanks,
>> Kyrill
>>
More information about the Gcc
mailing list