Christoph, Thank you very much for all the information you provided - the paper "Estimating the Impact of Scalable Pointer Analysis on Optimization" seems to be a good reference also for GOLF. I am new to pointer aliasing and fancier techniques in CIL such as symbolic execution, etc. BTW, there are a number of tools using CIL for sym.exec.: CAUT, CREST, a small tutorial very easy to understand. During the weekend I looked a bit at LLVM's support for pointer aliasing, trying to figure out if it's possible to use that info also in CIL. With this occasion I familiarized myself a bit with LLVM. I'll let you know if I get onto something concrete here.
Best regards, Alex On 9/20/2013 12:18 PM, Christoph Spiel wrote: > Alex, > > On Fri, Sep 20, 2013 at 09:12:50AM +0300, Alex Susu wrote: >> The partial modules is very interesting. Was it used for a >> publication? If so, could >> you please tell me some reference(s). > > The partial feature was written by the > original CIL crew Necula, McPeak, Weimer. It > looks like it is based on Mark N. Wegman's and > F. Kenneth Zadeck's paper > "Constant Propagation with Conditional Branches" > You can scan Necula's and Weimer's publication > list to see if there is anything official > besides the code. > > I rewrote Partial under an industrial > environment. We never did publish anything with > respect to it. Is that tool something public? > > >> 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. > > We used the module on C-code for > embedded systems. It turned out that for _our_ > setting the dead-branch elimination was more > promising than any other technique known at that > time. > > >> 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. > > Sorry for having coaxed you to a wasted walk up > to the library. I was thinking of the following > paper > Manuvir Das, Ben Liblit, Manuel Fähndrich, Jakob Rehof > Estimating the Impact of Scalable Pointer Analysis on Optimization > where he mentions the possibility of extending > the generalized one-level flow ("GOLF") to a > generalized multi-level flow, IIRC. He does not > elaborate along this line, though. > > I'm too lazy too dig into my own shelf, but the > following list should provide you with a useful > starting point for your own literature search. > > Jeffrey S. Foster, Manuel Fähndrich, Alex Aiken > Polymorphic versus monomorphic flow-insensitive points-to analysis for C > > Manuvir Das > Unification-based pointer analysis with directional assignments > > Manuel Fähndrich, Jakob Rehof, Manuvir Das > Scalable context-sensitive flow analysis using instantiation constraints > > Alex Aiken, Jeffrey S. Foster, John Kodumal, Tachio Terauchi > Checking and inferring local non-aliasing > > R.P. Wilson, M.S. Lam > Efficient context-sensitive pointer analysis for C programs > > > HTH, > Chris > Best regards, Alex ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk _______________________________________________ CIL-users mailing list CIL-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cil-users