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
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
b8ecc8d48a
nuked ReflectionSpecification
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3832 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-12 17:19:54 +00:00
sjfink
a0efbee8ff
Major refactoring to introduce com.ibm.wala.ide. Many related changes and patches from Marcelo Paternostro.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3693 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-22 15:06:12 +00:00
sjfink
b1ceb767cb
tweak comments
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3674 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-12 15:25:26 +00:00
sjfink
829145e97b
Nuke ClassHierarchyException from IClass.getSuperclass()
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3539 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-28 19:52:34 +00:00
sjfink
957cb2b8ca
deprecate Trace
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3432 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-09 20:31:14 +00:00
msridhar1
1b17786512
when reflection handling is disabled in the AnalysisOptions, disable stuff like handling of string constant arguments to reflective methods, etc.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3209 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-03 20:38:47 +00:00
sjfink
4b5795575a
fix bug 2491971 : enforce that first delegate to DelegatingSSAContextInterpreter is non-null.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3156 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-01-07 15:37:30 +00:00
sjfink
5021e63f29
nuke ResolutionFailure
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2737 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-04-01 13:31:52 +00:00
pistoia
04cab258c1
Added support for interrupting the construction of the call graph after a configurable maximum number of nodes is reached.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2677 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-05 06:24:51 +00:00
sjfink
745fd7d5a4
Simplify MethodTargetSelector and ContextSelector interfaces; delete optimizations based on allSitesDispatchIdentically and mayReturnSyntheticMethod.
...
Also some Cast bug fixes.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2656 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-03 21:32:45 +00:00
sjfink
84d0253841
new logic to interpret Class.newInstance() on a class constant, such as generated by forName(String constant).
...
Thanks Marco.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2575 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-02-13 18:49:56 +00:00
sjfink
bceae49558
enhance reflection support to evaluate Class.forName() on a string constant.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2542 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-02-05 19:09:23 +00:00
sjfink
1654d52b66
delete obsolete Malleable
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2443 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-24 21:50:02 +00:00
sjfink
c5caf88def
significant refactoring and generalization of instance keys and CFA builders
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2284 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-04 18:24:36 +00:00
sjfink
bb1fd3dc3f
1. delete obsolete benign.xml
...
2. more accurate model of array copy
3. bug fix in subtype test for class hierarchy
4. bug fix in OTF call graph fix point iteration
5. bug fix for RTA and ClassNotFoundException.
also misc. minor cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2074 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-29 04:01:25 +00:00
sjfink
098ab6e07d
bug fixes and cleanup of TypeBasedPointerAnalysis
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1959 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-10-26 14:53:39 +00:00
sjfink
eb91983f53
lots of new generics for fixed point solver hierarchy
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1694 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-08-31 21:38:28 +00:00
sjfink
59368d41ac
decouple IR caching from AnalysisOptions with a new AnalysisCache object
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1520 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-20 15:20:41 +00:00
sjfink
fd1a1d4cae
restructure to allow CGNodes to dwell in more than one CallGraph. lift some functions up from CGNode to CallGraph
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1422 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-11 16:24:58 +00:00
sjfink
5eb76541f0
massive overhaul of Warnings management
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1382 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-06 22:08:13 +00:00
sjfink
b0d31d38cb
remove some unnecessary IClassHierarchy parameters
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1254 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-06 20:15:37 +00:00
dolby-oss
0ed8d96d55
Changes to allow cross-language call graphs. The three biggest changes are as follows:
...
1) The visitors nested in the SSAPropagationCallGraph have become static classes so that they can be reused in a delegation pattern for the cross-language call graph builder.
2) The ClassHierarchy is now encapsulated behind an IClassHierarchy interface to allow for a CrossLanguageClassHierarchy that delegates to a set of child hierarchies, one for each language. The internals of the ClassHierarchy are almost entirely unchanged
3) There is now a new Language interface in com.ibm.wala.classLoader, and all IClassLoader objects have to know what language they load for. This language object now encapsulates a few language-specific options that were previously hacked into the AnalysisOptions object.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1212 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-01 03:26:18 +00:00
sjfink
9c58d8e2a8
change some Iterators in API to Collections
...
remove some unnecessary WarningSet parameters
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1208 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-31 02:38:49 +00:00
sjfink
ea3caa1e8a
mostly clean up old comments.
...
also rename InferGraphRootsImpl to InferGraphRoots
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1200 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-30 19:05:23 +00:00
sjfink
fdb7a17af3
add @Overrides annotations and nuke unnecessary casts
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1197 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-30 15:16:05 +00:00
sjfink
f2f40b3d4e
more argument checking
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1154 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-21 16:04:27 +00:00
sjfink
b0598a95f4
more argument checking
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1133 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-15 19:35:57 +00:00
sjfink
4acf542744
validate some arguments; throw IllegalArgumentExceptions
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1119 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-15 03:15:05 +00:00
sjfink
29a7b9c35d
feature 1717405: cleanup MemberReference.getDeclaringClass() API
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1107 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-14 17:30:49 +00:00
sjfink
97c9efd313
add new FakeWorldClinitNode as a home for calls to class initializers
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@602 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-01-24 16:32:48 +00:00
sjfink
df97f42b7e
attempt to introduce tags and trunk
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@490 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2006-11-22 17:38:46 +00:00