Ben Liblit
65be11f222
Merge branch 'master' into warning-fixes-unnecessary-code-controversial
2017-03-25 22:12:03 -05:00
Ben Liblit
42c7866dfd
Prune constructor and method signatures after removing unused fields
...
Removing an unused field sometimes means removing constructor code
that used to initialize that field. Removing that initialization code
sometimes leaves whole constructor arguments unused. Removing those
unused arguments can leave us with unused code to compute those
arguments in constructors' callers, and so on. This commit tries to
clean all of this up, working backward from the unused fields that an
earlier commit already removed. Hopefully I have avoided removing
upstream code that had other important side effects, but it wouldn't
hurt for a WALA expert to review this change carefully.
2017-03-25 17:40:22 -05:00
Ben Liblit
b4e5d078dd
Retain some unused methods
...
Manu requests that we keep these around even though they are currently
unused. So we'll retain them, but also annotate them to suppress the
warning.
2017-03-25 17:11:34 -05:00
Ben Liblit
67013a0d77
Fix 21 Eclipse warnings about unnecessary warning suppressions
2017-03-23 12:28:14 -05:00
Ben Liblit
059810c1ca
Fix 9 Eclipse warnings about unused methods
...
Note: some of these methods are decidedly nontrivial. Perhaps they
should not actually be removed? If any should be kept around, please
identify them to me. I'll revise this change to retain those methods
and simply annotate them as needed to suppress Eclipse's warning.
2017-03-20 00:44:36 -05:00
Ben Liblit
6766f1e261
Fix 42 Eclipse warnings about unused imports
2017-03-20 00:43:48 -05:00
Julian Dolby
d24519e974
cross-cutting changes to make more of WALA runnable with TeaVM. The biggest change is refactoring to AnalysisCache and friends; since TeaVM does not support SoftReference, I needed to add a layer of interfaces so that I can use a more simpleminded caching implementation for TeaVM. There are other changes to Module and friends to break connections with File and URL, which also cause TeaVM grief. I also organized imports in many places to remove unused types that caused trouble.
2017-02-02 20:33:27 -05:00
Julian Dolby
0f0c3d6bd9
add more functionality to analysis engine: create SDGs and
...
parameterize to do both regular and field-based analysis in JavaScript
2016-08-18 22:43:12 -04:00
Julian Dolby
096e2f796f
1) new support for function.prototype.apply in field-based CGs
...
2) fixes to Dalvik bytecode reader
3) fixes to Shrike writing Java 7 byte code
2014-12-11 21:48:23 -05:00
Julian Dolby
68ad4dbba6
first cut at heap graph for field-based pointer analyais
2014-10-30 21:14:12 -04:00
Julian Dolby
5137760580
fixes to field-based pointer analysis notion of all instance keys.
...
filter for only those actually present in the CG
2014-10-22 11:27:48 -04:00
Julian Dolby
1bb7610011
work toward pointer analysis based on the flowgraph from field-based
...
call graph builder
2014-10-19 22:44:03 -04:00
Juergen Graf
6f8aee80c6
Merge branch 'wala' into master
2014-07-28 17:09:02 +02:00
Julian Dolby
4469e06514
handle more cases with constructors
2014-05-28 13:35:40 -04:00
Juergen Graf
ef4513d377
revert PointerAnalysis hack that makes containsAny() and contains() methods in OrdinalSet unusable
2014-05-20 19:52:01 +02:00
Julian Dolby
99512c5cd0
uuse PrinterWriter; make DOM model optional
2014-04-11 10:00:05 -04:00
Julian Dolby
a1ca9203a6
flow graph handles some flow through the arguments array. also a fake
...
'pointer analysis' is constructed using the flow graph.
2014-02-08 22:50:32 -05:00
Julian Dolby
d528c16b0f
refactoring to integrate field-based cg builders with Eclipse-based
...
JavaScript front end
2013-08-05 14:35:41 -04:00
Manu Sridharan
54593a8f46
add code for field-based call graph
2013-05-22 16:04:25 -07:00