我一直在研究程序切片。由于该向后切片可在控制流图(CFG)上工作,并且有许多生成CFG的工具,因此我很容易用Java实现了向后切片算法。
但是,在阅读某些文章时,我发现正向切片适用于系统依赖图(SDG),并且我发现WALA会生成SDG,但也实现了正向切片。
WALA是一个非常大的项目,我有点迷失其代码和文档。有没有可以在Java中使用WALA's Forward slicing的示例?或者至少我如何以 dot 格式生成给定程序的SDG,以便也可以使用Graphviz对其进行可视化。
答案 0 :(得分:-1)
WALA's user guide可能对您有所帮助。在其示例中,您可以将computeBackwardSlice
方法更改为computeForwardSlice
方法以实现前向切片。
Wala已经实现为jar,您可以下载以下四个jar来调用其方法。
com.ibm.wala.core
com.ibm.wala.cast
com.ibm.wala.shrike
com.ibm.wala.util