Skip to content

Commit

Permalink
Updated the main readme file with more details
Browse files Browse the repository at this point in the history
  • Loading branch information
joannacss committed Jun 11, 2020
1 parent 6c56ae1 commit 5fc87fa
Show file tree
Hide file tree
Showing 8 changed files with 21 additions and 1 deletion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This repository shows the callgraphs generated using `SALSA` (**S**tatic **A**na
Salsa improves existing off-the-shelf pointer analysis to support the construction of callgraph that handles programs with serialization/deserialization.
To evaluate it, we performed the following:

1. We used the test cases from the [Java Call Graph Test Suite](https://bitbucket.org/delors/jcg/src/master/jcg_testcases/src/main/resources/Serialization.md) that uses serialization/deserialization features (i.e. `Ser1`-`Ser7`).
1. We used the nine test cases from the [Java Call Graph Test Suite](https://bitbucket.org/delors/jcg/src/master/jcg_testcases/src/main/resources/Serialization.md) that uses serialization/deserialization features (i.e. `Ser1`-`Ser9`).
2. We compiled these test cases using JRE 1.8 and generated JAR files.
3. We run Salsa against each test case and computed its callgraphs.

Expand Down
20 changes: 20 additions & 0 deletions callgraphs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Call graphs


This folder contains the visualization of the call graphs computed by `Salsa`.
Each PDF provides the call graph computed with and without Salsa, where we can see missing edges and nodes from the call graph.

Please notice that each PDF has only a **subset** of nodes and edges from the original call graph because each call graph includes many nodes from API calls.
For the sake of clarity, each PDF only includes nodes and edges if they fulfill the following criteria:

***For nodes***:

- The node correspond to a method implemented by the application (application-scope);
- The node is non-application (i.e., primordial or extension), but it has a call back edge to an application node;


***For edges***:
- All the outgoing edges from application nodes;
- All the outgoing edges from non-application nodes but wholse target is an application node (or is in a path that will lead to a call back to the application);


Binary file added jars/Ser1-JRE1.8.jar
Binary file not shown.
Binary file added jars/Ser2-JRE1.8.jar
Binary file not shown.
Binary file added jars/Ser3-JRE1.8.jar
Binary file not shown.
Binary file added jars/Ser4-JRE1.8.jar
Binary file not shown.
Binary file added jars/Ser5-JRE1.8.jar
Binary file not shown.
Binary file added jars/Ser9-JRE1.8.jar
Binary file not shown.

0 comments on commit 5fc87fa

Please sign in to comment.