Commit Graph

38 Commits

Author SHA1 Message Date
Ben Liblit a888a49fdd Fix all Eclipse warnings about unnecessary semicolons
I have *not* upgraded this problem to be treated as an error in the
future.  Unfortunately Eclipse uses a single configuration setting for
both unnecessary semicolons and also for empty control-flow statements
like `while (p) ;`.  I'm not convinced that it's worth rewriting all
instances of the latter into `while (p) { }`.  So this is just going
to stay as a warning for now.
2017-07-14 22:39:01 -07:00
Julian Dolby 0975441a43 changes for hybrid analysis 2015-04-05 21:19:56 -04:00
Julian Dolby 26f5254e3e more support for Java 7:
analysis now understands and propagates MethodHandle objects
  fixes to Shrike InvokeDynamic instruction


Former-commit-id: fb826f124423bcbca08f729cee1794fbda711d16
2014-08-07 16:02:48 -04:00
Julian Dolby 3910608d60 JavaScript slicer support 2014-07-11 11:55:02 -04:00
Julian Dolby 080325b5f6 merge 2013-06-25 11:57:37 -04:00
dolby fae5c86114 fixes for users of JDT interfaces, such as Miniatur/MemSAT 2012-10-01 13:11:10 -04: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
msridhar1 8ce7db97ea more global object handling; needs documentation
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4324 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:23:56 +00:00
msridhar1 306bc98bf5 progress on modeling the global object
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4321 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:22:58 +00:00
msridhar1 a6a8188244 change getPointerKeys() to return an Iterable, so we're not forced to construct a Collection (can cause a space blowup for a very large points-to relation)
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4224 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-22 15:53:33 +00:00
dolby-oss c7558b3646 fixes for Rational
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3985 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-02 19:11:58 +00:00
dolby-oss 00871016cb adapt to checkcast change
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3817 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-04-28 19:33:34 +00:00
sjfink 6e93304be5 tweak comments and deprecate some old code
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3671 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-12 15:20:44 +00:00
sjfink de6adbc4d7 more migration to Java assertions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3559 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-01 17:42:28 +00:00
sjfink 9939142eae switch from Assertions._assert to Java assertions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3555 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-30 13:16:52 +00:00
sjfink 77101da20f misc. cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3434 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-10 19:48:32 +00:00
dolby-oss e80dc6ef8c refactor handling of constants in Shrike to abstract away from Java bytecode
introduce factories to create SSAInstruction objects


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3433 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-10 18:33:07 +00:00
msridhar1 e08ed2663f Deprecate Iterator2Collection.toCollection(); use toSet() or toList() instead.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3421 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-09 15:24:42 +00:00
sjfink 4472b30826 more IllegalArgumentExceptions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3279 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-03-11 17:44:29 +00:00
sjfink 418c0181dc attempt to fix bug [ 1992941 ] Assertion contains side-effect -> crash
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2887 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-06-13 15:27:55 +00:00
msridhar1 6dbf70891d implemented a couple of HeapModel methods
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2479 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-25 18:09:34 +00:00
sjfink 6723d33683 bug fix and related API changes for interface type tests
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2104 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-05 19:49:03 +00:00
sjfink f2c1acaabb add an instance key to model the char[] contents of a string constant
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2079 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-29 18:54:44 +00:00
sjfink f6ebdd8eee first phase of restructuring to fix string constant pointer analysis problems
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2076 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-29 18:22:39 +00:00
sjfink 6362f3ffe3 introduce a factory for empty MutableSparseIntSet
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1971 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-10-29 13:18:26 +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 a304c60f79 more type parameters from Manu
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1391 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-07 01:57:47 +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 8864b70d50 miscellaneous housekeeping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1364 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-06 03:07:14 +00:00
sjfink ca0a40c850 delete CallGraph.getInterpreter() and CFGProvider
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1342 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-05 03:04:34 +00:00
sjfink 6421783e52 introduce factory for Iterator2Collection
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1308 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-21 16:14:00 +00:00
sjfink 56f4bec3ea 1) change implementation of CGNode hierarchy to avoid type parameters.
2) nuke BasicEntrypoints
3) tweak interface to InstanceKeyFactory for constants
4) refactoring for HeadlessWALA application

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1227 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-01 18:50:24 +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 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
dolby-oss 2dc8f805d4 major change is reworking how filtering works in the propagation call graph builders. The old notion of a filter as a type or an instance key has been replaced with an interface TypeFilter that supports arbitrary filtering. The class and instance key filters have been redone to use it, and a new filter that filters for types that dispatch to a particular method has also been added.
other minor changes:

TypeInference:
 1) fix to handle constant that is the last value number
 2) add visitor to set result of instanceof to boolean if doPrimitives
 3) PrimitivePropagateOperator not final to allow specialization
PrimitiveType:
 mimic Java semantics for implicit upcasts: add notion of size and 
 define meet to take larger size
SSASwitchInstruction:
 add iterator for switch labels
cfg.Util:
 add more helpers for dealing with switches


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@838 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-03-12 01:56:32 +00:00
sjfink 3ecc995a67 just format
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@538 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-01-08 21:29:40 +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