On February 4, 2015 10:15:30 AM CET, Jakub Jelinek <ja...@redhat.com> wrote: >On Wed, Feb 04, 2015 at 09:54:53AM +0100, Richard Biener wrote: >> On February 4, 2015 9:35:13 AM CET, Jakub Jelinek <ja...@redhat.com> >wrote: >> >On Wed, Feb 04, 2015 at 04:21:43AM -0200, Alexandre Oliva wrote: >> >> I'm a bit surprised the gimple layer does not even attempt to >> >simplify >> >> them, but I didn't try to tackle that, since I was not even sure >this >> >> was a useful optimization. After all, how often do we see xor of >and >> >of >> >> xor of and of xor of... in the wild, rather than in pathological >> >> testcases? :-) But hey, at least the rtl simplification is cheap, >so >> >> why not? >> > >> >I think we should teach at least VRP to simplify debug stmts >similarly >> >how >> >it simplifies normal comparisons etc. using value ranges, but that >> >would be >> >stage1 material. >> >> So I suppose this is only about debug exprs and we optimize regular >gimple >> well? Otherwise adding some patterns to match.PD could help. > >Sure. For e.g. VRP I meant that simplify_stmt_using_ranges could also >attempt to simplify (some) debug_bind stmts, similarly how it optimizes >normal stmts.
Sure. Of course it's bad that debug stmts use Generic... General fold-stmt could do some of the work. Also that debug temps have no use-def chains doesn't help too much. Richard. > Jakub