Is there a difference between "lower" and "legalize" in TIR?

I do not disagree, that is why I think the argument can go both ways. One pt here though is that legalization means we need to recursively call the lowering strategy on the return expr of the legalized code, while in the case of lowering we do not need to do so.

We could certainly name all the cases Legalization and still make things work. So it is mainly a technical design tradeoff that we need to make and in this case we can see arguments for both sides.