Hi, Christoph, The partial modules is very interesting. Was it used for a publication? If so, could you please tell me some reference(s). If I see well partial does not use the deadcodeelim module, but, as written in CIL.pdf, it does if-statement simplification which goes in that direction. The two modules complement their functionality, but, clearly partial is more complex.
Christoph, please provide a link for the "Generalized Multi-Level Flow" paper - I wasn't able to find the paper (at http://www.informatik.uni-trier.de/~ley/pers/hd/d/Das:Manuvir.html, etc). I'll take a look at CIL's pointer alias module and maybe I'll find some time to tweak it. Best regards, Alex On 9/18/2013 10:33 AM, Christoph Spiel wrote: > Alex - > > On Tue, Sep 17, 2013 at 04:21:43PM +0300, Alex Susu wrote: >> Did anybody use Dead code elimination (DCE)? > > We used it, but that dates back almost a > decade, when we analyzed several large projects > in embedded environments. > > Let me summarize the problems I still remember. > > (1) CIL introduces "goto" statements even in > "goto"-free source code. The `Partial' > module is not smart enough to disentangle > all kinds of cross-block jumps and thus > opportunities for eliminating e.g. one > branch of an "if" are missed even if the > condition is known. > > (2) `Partial' does not respect the "volatile" > attribute of constants. It might wrongly > flag expressions as constant and in turn > code as suitable for elimination. See my > comment in "partial.ml" around line 1100. > > (3) Precise pointer analysis turned out to be > crucial. The default `Olf' module is much > to imprecise, but you can simply replace it > with `Golf' at the top of "ptranal.ml". > Golf returns _much_ smaller alias-sets, > opening up further DCE opportunities. > > A more powerful pointer-analysis like the > "Generalized Multi-Level Flow" as hinted in > Manuvir Das' papers is still missing in > CIL's code base, though highly desirable. > > HTH, > Chris > ------------------------------------------------------------------------------ LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk _______________________________________________ CIL-users mailing list CIL-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cil-users