------- Additional Comments From law at redhat dot com 2004-11-03 15:43 ------- Subject: Re: [4.0 Regression] jump threading on trees is slow with switch statements with large # of cases
On Wed, 2004-11-03 at 15:08 +0000, pinskia at physics dot uc dot edu wrote: > ------- Additional Comments From pinskia at physics dot uc dot edu 2004-11-03 15:08 > ------- > Subject: Re: [4.0 Regression] jump threading on trees is slow with switch > statements with large # of cases > > > On Nov 3, 2004, at 10:03 AM, Jeffrey A Law wrote: > > > > > With loop bounds recording no longer charged to the expander it's time > > to deal with the inefficiencies which are in the switch expander. > > > > Basically we have code which does > > > > for each case > > for each case > > see if the label in the outer loop matches any of the cases in the > > inner loop (up to the current case in the outer loop). > > We don't really need some of this code anyways because the gimplifier > now reorders the case statements so that you don't have to do the loop > at all. Note carefully we are looking at the destination labels for each case within the switch. Thus to be able to avoid this loop we would have to know that even after the optimizers run that all cases which transfer control to the same destination are grouped together. jef -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15524