On 11/19/19 11:25 AM, Jakub Jelinek wrote:
The point I'm trying to make is that with if-to-switch, if cswitch doesn't handle it, we have a regression. If user writes it as a switch, it is a missed optimization if we generate worse code than we could, but not a regression.
Sure, but the question is how common are these conditions that can reassoc transform using the fancy popcount techniques? On the other handy, if-to-switch can optimize more switch statements to e.g. jump tables. As mentioned in the previous email, I can imagine doing gswitch from a if chain only if cswitch/switch lowering can handle it. Martin