------- Comment #10 from dberlin at gcc dot gnu dot org 2009-01-16 21:07 ------- Subject: Re: [4.2/4.3/4.4 Regression] trapping expression wrongly hoisted out of loop
On Fri, Jan 16, 2009 at 4:01 PM, rguenther at suse dot de <gcc-bugzi...@gcc.gnu.org> wrote: > > > ------- Comment #9 from rguenther at suse dot de 2009-01-16 21:01 ------- > Subject: Re: [4.2/4.3/4.4 Regression] trapping > expression wrongly hoisted out of loop > > On Fri, 16 Jan 2009, dberlin at dberlin dot org wrote: > >> Subject: Re: [4.2/4.3/4.4 Regression] trapping >> expression wrongly hoisted out of loop >> >> Hmmm. >> The only way you could get the CFG to represent that any call may exit >> would be to calls terminate bb's and have an edge from every call to >> exit. >> :( >> >> We actually do this with noreturn edges. >> It's probably a lot easier to just not move trapping expressions for now. > > Like all loads from pointers? :/ > > I'll try to do something slightly more clever. Ugh. What do other compilers do here? Honestly, if they are just as broken as us, i say we just do nothing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38819