Juergen Graf
ef4513d377
revert PointerAnalysis hack that makes containsAny() and contains() methods in OrdinalSet unusable
2014-05-20 19:52:01 +02:00
Juergen Graf
428a3975ed
Merge branch 'wala' into master
...
Conflicts:
com.ibm.wala.cast.java/src/com/ibm/wala/cast/java/loader/JavaSourceLoaderImpl.java
com.ibm.wala.cast.java/src/com/ibm/wala/cast/java/ssa/AstJavaInstructionFactory.java
com.ibm.wala.cast.java/src/com/ibm/wala/cast/java/ssa/AstJavaInvokeInstruction.java
com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/TestSimpleCallGraphShape.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/html/WebPageLoaderFactory.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/loader/JavaScriptLoader.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ssa/JSInstructionFactory.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ssa/JavaScriptInvoke.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ipa/callgraph/AstCallGraph.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ir/ssa/AbstractLexicalInvoke.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ir/ssa/AstInstructionFactory.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ir/ssa/AstLexicalRead.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ir/ssa/AstLexicalWrite.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ir/ssa/FixedParametersInvokeInstruction.java
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ir/translator/AstTranslator.java
com.ibm.wala.core/.classpath
com.ibm.wala.core/.settings/org.eclipse.jdt.core.prefs
com.ibm.wala.ide/src/com/ibm/wala/ide/util/ProgressMonitorDelegate.java
com.ibm.wala.util/src/com/ibm/wala/util/NullProgressMonitor.java
com.ibm.wala.util/src/com/ibm/wala/util/ProgressMaster.java
2014-05-20 17:59:16 +02:00
Michael Heilmann
efdd337dee
add and enable GetMethod context, interpreter and selector and associated unit tests
2014-05-20 13:12:06 +02:00
Michael Heilmann
45fe53a8bf
make NodeDecorator generic
2014-05-20 13:12:03 +02:00
Julian Dolby
3e55f0b370
new graph implementation for incremental graph extension
2014-05-20 13:11:19 +02:00
Julian Dolby
50c4ae2faa
try new way to find classpath entries for travis ci
2014-05-20 13:11:16 +02:00
Julian Dolby
5b22c3dba4
avoid running on travis for now
2014-05-20 13:11:12 +02:00
Julian Dolby
d0f099edb6
try to find jar file for travis tests
2014-05-20 13:11:07 +02:00
Julian Dolby
eb8f94c61c
try to find jar file for travis tests
2014-05-20 13:11:05 +02:00
Julian Dolby
8f376ffe71
rename dynamic cg test
2014-05-20 13:10:54 +02:00
Julian Dolby
dbd9c60d4f
type generalization
2014-05-20 13:10:22 +02:00
Julian Dolby
51ea9dee0e
test new mechanisms
2014-05-20 13:09:19 +02:00
Julian Dolby
2750f8e67b
1) use less verbose instrumentation to reduce problems with methods
...
getting too big
2) handle issues with exceptional control flow not being followed
properly sometimes
2014-05-20 13:09:13 +02:00
Julian Dolby
837cb5aee5
1) compress dumped call graph edges
...
2) make instrumentor preserve the names of jar entries and classes as
they are input, rather than recomputing class names when writing the
output jar. This usually makes no difference, but can preserve broken
structures when the input jar file has mismatches between class names
and its entry names.
2014-05-20 13:09:07 +02:00
Michael Heilmann
63ed63e7fa
add test for GetMethod context, interpreter and selector
2014-05-20 13:08:32 +02:00
Julian Dolby
a3a3e7fbe7
new graph implementation for incremental graph extension
2014-03-17 22:09:58 -04:00
Julian Dolby
b04a3f9b35
try new way to find classpath entries for travis ci
2014-03-17 10:09:48 -04:00
Julian Dolby
371695506d
avoid running on travis for now
2014-03-16 22:29:54 -04:00
Julian Dolby
b422fd500e
try to find jar file for travis tests
2014-03-16 22:14:36 -04:00
Julian Dolby
95c13203de
try to find jar file for travis tests
2014-03-16 22:01:02 -04:00
Julian Dolby
bfd999e03b
rename dynamic cg test
2014-03-16 18:04:21 -04:00
Julian Dolby
4c25c40789
type generalization
2014-02-08 22:52:19 -05:00
Julian Dolby
b5627bbe81
test new mechanisms
2014-01-07 22:36:23 -05:00
Julian Dolby
1914f016dd
1) use less verbose instrumentation to reduce problems with methods
...
getting too big
2) handle issues with exceptional control flow not being followed
properly sometimes
2014-01-07 17:35:44 -05:00
Julian Dolby
1259ab929f
1) compress dumped call graph edges
...
2) make instrumentor preserve the names of jar entries and classes as
they are input, rather than recomputing class names when writing the
output jar. This usually makes no difference, but can preserve broken
structures when the input jar file has mismatches between class names
and its entry names.
2014-01-03 10:10:03 -05:00
ksrinivs
bcc0d23c54
minor fixes
2013-12-03 16:01:28 -05:00
ksrinivs
639c876fe5
partial coloring
2013-12-02 14:42:51 -05:00
ksrinivs
3d91075842
partial coloring
2013-12-02 14:37:28 -05:00
Julian Dolby
b057e35e2c
for now, ignore tests impacted by library change
2013-11-26 19:26:52 -05:00
Julian Dolby
7948f3b9ae
merge
2013-11-26 16:25:43 -05:00
ksrinivs
c1a923d0ba
allow partial coloring
2013-11-26 15:04:09 -05:00
Julian Dolby
dedbc2d443
coloring now requires numbered graphs. a performance hack.
2013-11-21 14:27:27 -05:00
Julian Dolby
bdc742f558
shrike cg tests
2013-11-14 21:48:04 -05:00
Julian Dolby
0ccaae3b2c
pull exclusions file support into util project and then share it with
...
the shrike-based dynamic call graph builder so that static and dynamic
graphs can be built consistently more easily.
2013-11-14 13:02:56 -05:00
Juergen Graf
cdaaddf88b
Merge branch 'wala' into master
2013-07-02 14:23:24 +02:00
Manu Sridharan
b984760100
support for reading method parameter annotations from Java bytecodes
2013-06-28 11:44:47 -04:00
Julian Dolby
080325b5f6
merge
2013-06-25 11:57:37 -04:00
Manu Sridharan
38d0c3cc12
re-enable test
2013-05-27 11:07:32 -07:00
Manu Sridharan
119fd841af
more manifest hacks. Also, temporary disable CG IO test
2013-05-27 10:35:55 -07:00
Manu Sridharan
9bc5bcbb3c
Disable certain tests when analyzed classes are in a jar file.
...
These tests create FileModules for certain class / source files,
and hence assume those files are sitting in the filesystem. We
should come up with a better fix here.
2013-05-26 14:45:50 -07:00
Manu Sridharan
878cfa615d
changes to get tests passing on Java 7
2013-05-26 10:07:46 -07:00
Manu Sridharan
3b1889121b
add missing copyright headers
2013-05-22 15:39:19 -07:00
Julian Dolby
310d0fff25
changes to ease use of WALA from an executable jar. also some very
...
basic support for GXL, a graph format used by some software engineering
tools.
2013-05-15 13:36:30 -04:00
Manu Sridharan
c0e3cb9831
fix for handling of static methods in ContainerContextSelector
2013-05-14 14:17:26 -07:00
Manu Sridharan
16a0e02fa0
add utility methods for creating n-CFA call graph builders
2013-05-10 20:55:13 -07:00
Manu Sridharan
30686135da
Fix for bug with pi nodes reported by Andreas Sewe
...
We weren't handling the case where the val of the pi instruction
had an implicit points-to set.
2013-05-07 14:43:49 -07:00
Manu Sridharan
d149ca2c73
Revert fix for tests; we need to figure out the right fix here.
...
This reverts commit cab3c6c0c4
.
2013-05-02 10:55:45 -07:00
Cosmin Radoi
edbdf989a9
right classloader for call graph tests
2013-04-29 13:13:23 +02:00
Manu Sridharan
9549da9954
read runtime-visible annotations for fields
2013-04-08 13:50:26 -07:00
Julian Dolby
321e925660
work on CHA
2013-04-03 12:12:43 -04:00
Juergen Graf
d77cfc60fc
incorporate changes from other branch
...
- Annotation support
- Properly fix path-with-spaces bug.
- fix bug involving paths with spaces
- add a simple driver for building a call graph via a scope file
- Properly return null as default constructor of an array.
- organize imports
- better handling of missing bytecodes
- javadoc
- test fix
- small Javadoc fix
- added date-property.js
- 1) added InstanceKey.getCreation sites and its implementations 2) fixes for issues with keys representing dynamic properties i) all properties are converted to strings,
- publicize method makeClasspath(). deprecate quoteStringIfNeeded()
- organize imports
- javadoc
- renamed classes to make relationship to mod-ref analysis clearer
- add support for lexical writes
- Code to compute transitive lexical accesses of methods.
- extract some generally useful code from ModRef
- Generate proper InstanceFieldKeys for property accesses with Numbers.
- rewrite to make hardest test appear last
- fix test to properly check reachability
- add an array test that doesn't quite work
- add method to get a PointerKey for a global
- compare FieldValueDispatch objects based on CGNode as well
- Handle duplicate field names between subclass and superclass.
2013-02-06 12:34:25 +01:00
Manu Sridharan
182363bf88
fix bug involving paths with spaces
2013-01-30 17:29:41 -08:00
Manu Sridharan
72f85ba2a9
add a simple driver for building a call graph via a scope file
2013-01-25 10:41:11 -08:00
Manu Sridharan
ba228963bf
better handling of missing bytecodes
...
In some cases, class files will have non-abstract methods with no
bytecodes (e.g., stubs for compilation purposes). While such a class
file is invalid, we want to enable clients to handle such an error.
With these changes, Shrike will throw an InvalidClassFileException for
such cases, and WALA's IR construction code will throw a
WalaRuntimeException.
2013-01-21 15:27:13 -08:00
Juergen Graf
b82d5dba90
Merge branch 'wala' into master
2012-11-06 04:23:10 +01:00
Manu Sridharan
256cd06460
Convert all Java source files to use Unix line endings; no semantic change
2012-09-04 15:56:05 -07:00
Julian Dolby
4a850a9510
added the com.ibm.wala.ide.jdt project
2012-08-21 18:52:09 -04:00
dolby
72e8dc9098
reorganize stuff for using JavaScript stuff from Eclipse
2012-08-21 09:48:53 -04:00
Juergen Graf
b8477d2144
incorporate changes from other branch
...
- basic compatibility with Java 7 (i.e., don't crash immediately)
- Added utility class for converting call graphs to JSON.
- add edgeExists CLI option to check if some edge exists in the call graph
2012-08-06 12:49:03 +02:00
Manu Sridharan
3317c1ccf6
basic compatibility with Java 7 (i.e., don't crash immediately)
2012-08-03 15:41:09 -07:00
dolby
4b3cba710d
changes from upstream
2012-06-29 15:47:54 -04:00
Juergen Graf
42c1016d96
remove duplicate class from wrong package
2012-05-21 11:25:26 +02:00
Juergen Graf
1bf5b73e74
static initializer order detection stuff from Martin Seidel
2012-05-18 15:58:47 +02:00
Juergen Graf
627fbc15c3
static initializer tests
2012-05-16 14:02:29 +02:00
Manu Sridharan
c415f3e0fd
Enhanced pointer analysis to reason that arrays known to be of zero length
...
cannot have any contents.
2012-05-09 15:35:54 -06:00
Manu Sridharan
c116f16823
got code to compile again, and wala.core regression tests pass
2012-04-16 22:30:03 -04:00
Manu Sridharan
2edb070437
changed FileProvider to have instance methods
2012-04-16 14:57:14 -04:00
msridhar1
d81d8569eb
fix test
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4554 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-04-03 22:43:34 +00:00
msridhar1
1d28b2dc26
fix for bug reported by Juergen Graf: handle multiple fields with the same name in a JVM class
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4552 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-04-03 22:26:12 +00:00
msridhar1
7630cd79c9
Revamped support for reading Java annotation information from .class files.
...
The code should handle all cases now, and the APIs are improved.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4422 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-11 17:11:59 +00:00
msridhar1
cbd8b63142
undo change to SlicerTest
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4291 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-12-28 17:03:42 +00:00
msridhar1
59e46916ce
Generalize certain IR data structures to be less Java-specific. Generalize annotations code to allow for reading annotation parameters. Various other fixes
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4290 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-12-28 17:03:27 +00:00
sjfink
6c4fcdcbee
bug fix from David Young: use File.pathSeparator
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4280 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-10-10 13:03:00 +00:00
dolby-oss
7a6af352b9
moved IR-independent visualization of graphs to util project
...
added DFS path find that finds all paths in sequence rather than just one
moved the WalaException out of warnings subpackage
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4257 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-08-16 16:51:11 +00:00
msridhar1
253444a6ad
make demand pointer analysis tests less dependent on standard library implementation
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4234 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-25 18:10:31 +00:00
msridhar1
e9199401c9
change to remove time blowup in test on recent Java versions
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4231 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-22 21:48:15 +00:00
msridhar1
deddf6ecbe
make the condition checked by a couple of tests more specific, to avoid issues with different Java library versions
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4230 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-22 21:29:57 +00:00
msridhar1
981e04f243
update to work on Windows
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4229 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-22 20:26:04 +00:00
msridhar1
25b0e33015
fix test to be less dependent on library code
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4228 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-22 20:24:35 +00:00
dolby-oss
15c202f8e6
Welsh-Powell graph coloring
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4180 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-06-01 21:47:15 +00:00
msridhar1
f8197b4f2c
patch to fix FileProvider bug from Marcel Bruch
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4177 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-05-27 19:50:33 +00:00
dolby-oss
4da02a9125
Changes to extend supported context sensitivity to CPA-style:
...
1) extend ContextSelector interface to allow it to specify parameters of interest
2) extend filtering mechanism at call sites to allow CPA-style filtering when requested by contexts
3) various related fixes and extensions:
a) removed redundant code to handle dispatch for JavaScript, so now it shares the core mechanism
b) tighten types for operators that take an array of args - now the array is T[] at the cost of a few array allocation methods
c) a bit more support for empty int sets
d) void function objects
e) bug fixes for lexical scoping support, and adaptation to work with core dispatch mechanism
f) example of CPA-style sensitivity to handle nastiness in a JavaScript for(.. in ...) loop
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4150 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-27 13:58:56 +00:00
msridhar1
857e456806
organize imports
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4081 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-03 04:08:05 +00:00
msridhar1
9aa9187edc
fix for CFG bug reported by Benedikt N on mailing list, plus test case
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4077 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-03-24 19:41:46 +00:00
msridhar1
e3564dce02
change ClassHierarchy to IClassHierarchy
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4076 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-03-21 16:04:45 +00:00
msridhar1
fb10bd4611
uncomment test and indicate why we don't currently run it
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4063 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-03-01 18:15:17 +00:00
msridhar1
c0b30598f4
added another test
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4060 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-02-10 00:01:32 +00:00
msridhar1
06b652d1fb
fix bug reported by Benedikt Nordhoff on mailing list: for cases where an enclosing exception handler catches all exception types, don't add an exceptional edge from a throw instruction to method exit.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4057 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-02-08 23:41:03 +00:00
sjfink
6bd8363503
refactor to isolate core utilities from dependence on Eclipse IProgressMonitor
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4034 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 22:06:58 +00:00
sjfink
fa825de846
refactoring of fixpoint API
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4033 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 21:43:18 +00:00
msridhar1
b3df24132f
move BitVectorKillAll to wala.core
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4023 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-03 21:09:21 +00:00
msridhar1
88eaba4ee7
add models for System.getProperty() methods to fix bug reported by Ravi Chandran on mailing list
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4002 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-23 17:39:19 +00:00
msridhar1
2ed3b05257
bug fix
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3986 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-03 17:49:06 +00:00
msridhar1
7a5d3baacd
bug fix for CFGSanitizer
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3984 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-20 20:38:44 +00:00
dolby-oss
d4ee31ad9e
added clear() method to mutable int sets
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3981 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-15 02:10:44 +00:00
dolby-oss
502db2afb9
make some stuff static
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3977 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:35:08 +00:00
dolby-oss
48ff32f2e3
copyright comment update
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3975 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:29:47 +00:00
msridhar1
0ca5dc1c0e
better fix for PDG bug reported by Ravi Chandran
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3967 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-06 17:03:35 +00:00
msridhar1
029b1fc1fd
Fix for bug reported by Ravi Chandran on the mailing list (10/01/2010). Properly add edges from method entry in the PDG
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3965 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-05 18:45:43 +00:00
dolby-oss
ed889de199
added Floyd-Warshall all pairs shortest path implementation
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3964 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-04 17:27:56 +00:00