2013-04-27 2 views
2

Dans mon projet, j'ai deux problèmes à résoudre.graphe d'appel sensible au contexte pour java bytecode et le cadre d'analyse de flux de données interprocédural?

1: J'ai besoin d'un graphe d'appel contextuel pour java (bytecode). Ici, le contexte est la pile d'appel de la méthode, c'est-à-dire, pour différents points d'invocation de la même méthode, le graphe d'appel comprend deux copies de la méthode, en distinguant les différents points d'invocation. Je sais que Paddle et Soot peuvent le faire, mais les librairies utilisées par Paddle ne sont disponibles que sur win32 et j'utilise Win64 pour ses grands souvenirs (nécessaires dans mon projet). Est-ce que wala peut générer un tel graphe d'appel contextuel? Quels outils devrais-je utiliser?

2: Je souhaite utiliser un cadre d'analyse de flux de données inter-procédures dans mon projet. Puisque je ne me concentre pas sur ce sujet, je ne sais pas quel est l'outil le plus approprié. Je sais que Soot a implémenté le framework IFDS/IDE (RHS, alias 1995), mais il n'est pas sensible au contexte. WALA l'implémente aussi, et j'étudie à ce sujet. Je veux savoir s'il existe d'autres implémentations d'infrastructure d'analyse de flux de données inter-procédurales pour Java. Peut-être que jChord travaille aussi pour moi.

Quelqu'un peut-il me donner une suggestion? Merci. Student Popper

Répondre

2

J'ai utilisé WALA pour y parvenir.