On Thu, Aug 3, 2017 at 2:56 PM, Richard Biener wrote: > I think the main reason for not doing it early is the benefit is small > (unless it is GIMPLE optimizations triggering)
Agree. > and we can't get rid of > switches completely because we eventually have to support casei RTL expansion. > (and no, computed goto with an array of label addresses at GIMPLE is really > too ugly ;)) What I would have done, is lower all gswitch statements that are to be lowered to something other than a tablejump. So by the time you get to RTL expansion, all remaining gswitch statements would be tablejump or casesi. Ciao! Steven