On 7/9/25 7:17 AM, Richard Biener wrote:


ISTR the backwards threader simply cancels paths that had blocks in
common with another jump thread (that happened to be materialized
first).  But maybe it's less strict than that.  It cancels things in too
many places and while it collects all opportunities upfront it doesn't
have any global limit on the amount of copying it does (and do pruning
based on such limit in any sensible order, of course).
My recollection is it cancels paths that are subpaths of some larger path. But if you have distinct incoming edges that target a particular outgoing edge, each of those incoming edges can be threaded (and each creates a copy).

jeff

Reply via email to