On Tue, May 10, 2016 at 3:41 PM, Kyrill Tkachov <kyrylo.tkac...@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. Richard. > Thanks, > Kyrill >