Hi, I am new to Cecil and therefore I want to clarify if Cecil fits my needs. This is what I want to do:
I assume a working C# application with source code. I need a tool that determines if a pair of methods is heap memory dependent. A pair of methods is heap memory dependent if both methods access the same heap memory location. I also want to know the kind of dependence (read-read, read-write, write-write). I assume it it possible to collect this information during runtime by instrumenting the IL code before running the applicaion (as opposed to IL rewriting with the .NET profiling API). I think that the tool would need to instrument the application by: - finding every load and store operation that affects heap memory - pushing the address of the load or store operation onto the stack - calling a logger function that consumes this address My questions are: - Is this the right way? - Is it possible to instrument IL code this way with Cecil? - If it is possible - how tricky is it? Do I have to care about tiny/ fat methods, structured exception handling offset recalculation etc? (This question is inspired by this article: http://msdn.microsoft.com/en-us/magazine/cc188743.aspx) Thanks in advance, Jochen Huck -- -- mono-cecil
