On Fri, Mar 11, 2011 at 8:50 PM, Jeff Law <l...@redhat.com> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 03/09/11 09:24, Xinliang David Li wrote: >> On Wed, Mar 9, 2011 at 6:03 AM, Jeff Law <l...@redhat.com> wrote: >> On 03/09/11 02:45, Richard Guenther wrote: >>>>> On Tue, Mar 8, 2011 at 11:04 PM, Jeff Law <l...@redhat.com> wrote: >> >>>>> True. I've been repeatedly thinking of building some on-the-side CFG >>>>> with value-numbered predicates to also catch the CFG vs. scalar-code >>>>> predicate combinations we have. On such on-the-side data structure >>>>> we could do very aggressive jump-threading just for analysis purposes >>>>> (experiments when working on separating conditions shows that >>>>> a PRE-like algorithm could drive this). >> I'm pondering the same kind of thing. PRE on the predicates with a more >> structured approach to block copying to isolate the paths seems to be >> the way to go. >> >> >>> Any simple examples to show how your idea would work? > Our current jump threading is just a special case of path isolation; the > biggest problem with path isolation is exploding codesize. > > I'd like to see that code generalized in a few ways based on well known > algorithms rather than the ad-hoc stuff we've got now keeping a > reasonable knob on the codesize bloat. > > In cases where we want more accurate warnings, but aren't willing to > accept the size bloat, on the side structures might be the way to go. > > I'm still looking a literature on the subject, but there's clearly > things we can do to improve the path sensitivity of the optimizers and > warning analysis.
Yes, I am also thinking of static analysis stuff people seem to want. That requires us to not actually do any transform. Richard.