projects
/
IRC.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
going to start with just enough definite reach analysis to do a simple example
[IRC.git]
/
Robust
/
src
/
Analysis
/
Disjoint
/
DefiniteReachAnalysis.java
diff --git
a/Robust/src/Analysis/Disjoint/DefiniteReachAnalysis.java
b/Robust/src/Analysis/Disjoint/DefiniteReachAnalysis.java
index 5fec38af0d380f2b9a4b010fb5f168c8c1c3fbeb..f22da374f78d6c9a4b298679567bbd10ccd76cd6 100644
(file)
--- a/
Robust/src/Analysis/Disjoint/DefiniteReachAnalysis.java
+++ b/
Robust/src/Analysis/Disjoint/DefiniteReachAnalysis.java
@@
-49,9
+49,10
@@
public class DefiniteReachAnalysis {
public void store( FlatNode fn,
TempDescriptor x,
FieldDescriptor f,
public void store( FlatNode fn,
TempDescriptor x,
FieldDescriptor f,
- TempDescriptor y ) {
+ TempDescriptor y,
+ Set<EdgeKey> edgeKeysRemoved ) {
DefiniteReachState state = makeIn( fn );
DefiniteReachState state = makeIn( fn );
- state.store( x, f, y );
+ state.store( x, f, y
, edgeKeysRemoved
);
fn2state.put( fn, state );
}
fn2state.put( fn, state );
}
@@
-62,15
+63,16
@@
public class DefiniteReachAnalysis {
fn2state.put( fn, state );
}
fn2state.put( fn, state );
}
- // x is the return value, x = foo(...);
public void methodCall( FlatNode fn,
public void methodCall( FlatNode fn,
- TempDescriptor
x
) {
+ TempDescriptor
retVal
) {
DefiniteReachState state = makeIn( fn );
DefiniteReachState state = makeIn( fn );
- state.methodCall(
x
);
+ state.methodCall(
retVal
);
fn2state.put( fn, state );
}
fn2state.put( fn, state );
}
+
+
public void writeState( FlatNode fn, String outputName ) {
DefiniteReachState state = makeIn( fn );
try {
public void writeState( FlatNode fn, String outputName ) {
DefiniteReachState state = makeIn( fn );
try {