On 17/01/2024 07:42, Jeff Law wrote: > > > On 1/13/24 08:43, Alex Coplan wrote: > > The next patch in this series exposes an interface for creating new uses > > in RTL-SSA. The intent is that new user-created uses can consume new > > user-created defs in the same change group. This is so that we can > > correctly update uses of memory when inserting a new store pair insn in > > the aarch64 load/store pair fusion pass (the affected uses need to > > consume the new store pair insn). > > > > As it stands, finalize_new_accesses is called as part of the backwards > > insn placement loop within change_insns, but if we want new uses to be > > able to depend on new defs in the same change group, we need > > finalize_new_accesses to be called on earlier insns first. This is so > > that when we process temporary uses and turn them into permanent uses, > > we can follow the last_def link on the temporary def to ensure we end up > > with a permanent use consuming a permanent def. > > > > Bootstrapped/regtested on aarch64-linux-gnu, OK for trunk? > > > > Thanks, > > Alex > > > > gcc/ChangeLog: > > > > PR target/113070 > > * rtl-ssa/changes.cc (function_info::change_insns): Split out the call > > to finalize_new_accesses from the backwards placement loop, run it > > forwards in a separate loop. > So just to be explicit -- given this is adjusting the rtl-ssa > infrastructure, I was going to let Richard S. own the review side -- he > knows that code better than I.
Yeah, that's fine, thanks. Richard is away this week but back on Monday, so hopefully he can take a look at it then. Alex > > Jeff