On Thu, Apr 03, 2025 at 07:50:13AM -0600, Jeff Law wrote: > On 4/3/25 7:40 AM, Richard Sandiford wrote: > > > > > > But log-links on i2 are for uses in i2 for defs before i2, given > > > i0/i1/i2 changed/have gone away we adjust those to eventually end > > > up on insns between i2 and i3 (or indeed after i3). Combine then > > > want's to try combine the insns with changed log-links. > > > > Right. But I meant in the case where i2 hasn't changed, which > > I thought was the case in contention. If i2 hasn't changed then > > its uses are the same, and so there is no need to distribute its > > log links. > I'm not following closely (though I'm definitely interested as I continue to > see cases were 2->2 for rewriting would be profitable). > > Do we have to worry about the case where i2 doesn't change, but the other > insn does change? I know I saw one of those scenarios in a hot loop in > coremark for rv64.
Both the PR116398 and PR114518 are P1s about combiner in GCC 15 punting the 2->2 combinations where only i3 changes and i2 doesn't. Jakub