A preparation guide for Java call graph comparison finding a match for your methods /
Call graphs provide a basis for numerous interprocedural analyzers and tools, therefore it is crucial how precisely they are constructed. Developers need to know the features of a call graph builder before applying it to subsequent algorithms. The characteristics of call graph builders are best unde...
Elmentve itt :
Szerzők: | |
---|---|
Testületi szerző: | |
Dokumentumtípus: | Cikk |
Megjelent: |
University of Szeged, Institute of Informatics
Szeged
2019
|
Sorozat: | Acta cybernetica
24 No. 1 |
Kulcsszavak: | Java, Programozás, Számítástechnika |
Tárgyszavak: | |
doi: | 10.14232/actacyb.24.1.2019.10 |
Online Access: | http://acta.bibl.u-szeged.hu/59232 |
Tartalmi kivonat: | Call graphs provide a basis for numerous interprocedural analyzers and tools, therefore it is crucial how precisely they are constructed. Developers need to know the features of a call graph builder before applying it to subsequent algorithms. The characteristics of call graph builders are best understood by comparing the generated call graphs themselves. The comparison can be done by matching the corresponding nodes in each graph and then analyzing the found methods and calls. In this paper, we developed a process for pairing the nodes of multiple call graphs produced for the same source code. As the six static analyzers that we collected for call graph building handles Java language elements differently, it was necessary to refine the basic name-wise pairing mechanism in several steps. Two language elements, the anonymous and generic methods, needed extra consideration. We describe the steps of improvement and our final solution to achieve the best possible pairing we are able to provide, through the analysis of the Apache Commons-Math project. |
---|---|
Terjedelem/Fizikai jellemzők: | 131-155 |
ISSN: | 0324-721X |