Hi,

On Wed, Apr 11, 2012 at 12:26:31PM +0800, Vijayaraghavan Murali wrote:
> Any help with these two options (or slicing using CIL in general) would 
> be greatly appreciated.

I have really no idea what these options do and how they work.  They were coded
long before I joined the project and I do not actively maintain the extensions
in fact, only the core of CIL.

You can try to have a look in src/ext.  The relevant files seem to be
dataslicing.ml (which mentions that the code must be annotated with "region(i)"
attributes, option --doDataSlicing), epicenter.ml (which removes functions more
the n hops away from a given function, option --doepicenter) and astslicer.ml
(which is not accessible as a feature for some reason, maybe it does not even
compile anymore).

In case you missed that in the doc, attributes are written like this:
http://kerneis.github.com/cil/doc/html/cil/attributes.html#toc7

So for the doDataSlicing, it should look like (completely untested):

int (__attribute__((region(1))) f)(int x, int y); /* function declaration */
struct foo { int __attribute__((region(2))) x; int y; } /* some field in a 
struct */

I hope someone will have a more useful answer.  Do not hesitate to share your
findings here for future users.

Best,
-- 
Gabriel

------------------------------------------------------------------------------
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
_______________________________________________
CIL-users mailing list
CIL-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cil-users

Reply via email to