On 10/23/26 5:45 PM, Vineet Gupta wrote:

It seems prune_expressions is for pruning blocks with an incoming abnormal edge. the right place for this handling. asm goto has ordinary edges: bb 2 -> bb 3 is fallthru and bb 2 -> bb 4 (label) has no flags.
Correct, but it's going to be hard to split edges out of an asm goto.  So in many respects it's like an abnormal, hence the desire to use those mechansisms rth put into gcse.c so many years ago.


In fact looking in prune_expressions' comment,

" It would
  be best to implement this check along the lines of
  should_hoist_expr_to_dom where the target block is already known
  and, hence, there's no need to conservatively prune expressions on
  "intermediate" set-and-jump instructions."

which is what this patch does.
Oh ;-)  You can tell it's been a long time since I looked at this stuff.

Jeff

Reply via email to