context sensitive call graph for java bytecode and interprocedural dataflow analysis framework?

511 views Asked by At

In my project, I have two problems to address.

1: I need a context-sensitive call graph for java (bytecode). Here the context is the call stack of the method, i.e., for different invocation points of the same method, the call graph includes two copies of the method, distinguishing the different invocation points. I know Paddle and Soot can do this, but the libraries used by Paddle are only available on win32 and I am using Win64 for its large memories (necessary in my project). Can wala generate such context sensitive call graph? What tools should I use?

2: I want to use a inter-procedural dataflow analysis framework in my project. Since I am not focusing on this topic, I don't know which one is the most suitable tool. I know that Soot has implemented the IFDS/IDE framework (RHS algorithm popl 1995), but it is not context sensitive. WALA also implements this, and I am investigating on this. I want to know whether exist other implementations of inter-procedural dataflow analysis framework for Java. Maybe jChord also works for me.

Can somebody give me some suggestion? Thank you. Student Popper

1

There are 1 answers

0
Student Popper On

I have used WALA to achieve this.