Commit Graph

2385 Commits

Author SHA1 Message Date
Stephan Gocht 6df7c85714 Changed class and construction modifier to public. 2015-09-07 23:11:41 +02:00
Stephan Gocht 2dc6322356 Extracted private class and made it public. 2015-09-07 21:49:03 +02:00
Stephan Gocht 52ea4af62c Added Support for creating pi nodes for more than on variable. 2015-08-19 17:46:58 +02:00
Julian Dolby 045537274f merge 2015-08-13 11:26:48 -04:00
Julian Dolby 671bd98977 Java 8 suport enhancements, mostly to model lambdas compiled to
invokedynamic
2015-08-12 15:20:21 -04:00
Julian Dolby b1538aece6 Merge branch 'master' of https://github.com/wala/WALA 2015-08-09 13:47:01 -04:00
Julian Dolby 8470091225 Java 8 default methods 2015-08-09 13:46:03 -04:00
Manu Sridharan 13a46d8ea3 Fixes #82
PrunedCFG had been changed to always include an entry and exit node.
The logic for detecting an "empty" ExceptionPrunedCFG inside the PDG
construction code had not been updated appropriately.
2015-08-06 11:08:27 -07:00
Julian Dolby 223fb8d439 try to be more precise about finalize methods 2015-07-31 09:20:46 -04:00
Martin Mohr 9b8b323812 make configurable whether we apply an optimized version of hasExceptions() 2015-07-27 18:31:43 +02:00
Martin Mohr 65b9e97ae5 refine hasExceptions(): return true if there are *uncaught* exceptions 2015-07-27 14:17:18 +02:00
Julian Dolby 519b98a0ea fixes to model of for ... in ... in JavaScript 2015-07-24 22:48:20 -04:00
Julian Dolby 563b6ba6aa fixes for for ... in ... form in JavaScript 2015-07-24 22:44:10 -04:00
Julian Dolby 364fe7fa99 make dynamic and static analysis more consistent 2015-07-24 22:42:34 -04:00
Julian Dolby b721a3ceb0 updates to dynamic call graphs to better match static ones 2015-07-10 09:44:01 +02:00
Julian Dolby a6a060ed25 changes for handling of 'callbacks' in dynamic CGs 2015-06-28 17:06:21 -04:00
Martin Mohr 8d143dbf20 remove 'Custom Change' markers 2015-06-25 09:12:37 +02:00
Martin Mohr 0b92907149 Revert "cache for selectors"
This reverts commit 0af7f105ec.
2015-06-25 09:12:37 +02:00
Juergen Graf bd96807d7c fix bug: npe on control dep computation when exceptions are ignored 2015-06-22 10:45:26 +02:00
Martin Mohr f2a4bba83f bugfix in debug output: only take item from worklist if it is not empty 2015-06-14 23:33:43 -07:00
Martin Mohr b378f8c458 custom change: include target in string representation of cond-branch 2015-06-14 23:31:35 -07:00
Martin Mohr 29779f411a allow adding a conditional branch instruction 2015-06-14 23:31:35 -07:00
Martin Mohr a83ba08980 turn off debug output 2015-06-14 23:31:00 -07:00
Martin Mohr 80fd657675 transcribe non-overwritten reserved slots into "goto next" instructions 2015-06-14 23:31:00 -07:00
Martin Mohr a5b6490951 fix getNextProgramCounter()
handle the case that the current program counter is free
2015-06-14 23:29:27 -07:00
Martin Mohr 1acbf4b9f7 preserve holes in instruction array when transcribing method summary
otherwise the iindex fields in the ssa instructions are inconsistent
with their index in the instruction array
2015-06-14 23:29:10 -07:00
Martin Mohr 1f105dc101 staticalize a method 2015-06-14 23:29:10 -07:00
Martin Mohr 9e5be48138 only generate return statement if caller and callee are compatible 2015-06-14 23:27:57 -07:00
Martin Mohr 0af7f105ec cache for selectors 2015-06-14 23:27:57 -07:00
Julian Dolby 31f9f1b0b5 more exclusions
allow 1.8 libs
2015-06-04 15:51:46 -04:00
Manu Sridharan 052023581d update version to 1.3.8-SNAPSHOT 2015-05-31 13:53:07 -07:00
Manu Sridharan f2f65bfbc5 oops, version should be 1.3.7 2015-05-29 13:20:25 -07:00
Manu Sridharan 894f010ff9 version 1.3.8 2015-05-29 12:20:53 -07:00
Manu Sridharan 7ad8700064 update version numbers to 1.3.7-SNAPSHOT everywhere 2015-05-28 10:37:01 -07:00
Julian Dolby 22ad339fd9 dalvik test infrastructure 2015-04-05 21:22:55 -04:00
Julian Dolby d85347f231 Merge branch 'master' of https://github.com/wala/WALA 2015-04-05 21:20:03 -04:00
Julian Dolby 0975441a43 changes for hybrid analysis 2015-04-05 21:19:56 -04:00
Collin Winter 33d3139667 Use Arrays.toString() instead of the default array toString() method.
The former will include the contents of the array, while the latter
only includes the object's identity.

This will allow WALA to be compiled using Google's error-prone compiler
(https://github.com/google/error-prone).
2015-03-25 19:02:28 -07:00
Julian Dolby de26484098 java annotations support for dalvik 2015-03-04 13:49:58 -05:00
Julian Dolby 5cc870dd77 fixes to Dalvik support, and work on running Dalvik tests on Travis 2015-02-26 09:34:03 -05: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
Cosmin Radoi 853b5fc37a replace Filter with Predicate 2014-11-25 13:23:47 -06:00
Julian Dolby bf7dbe6359 misc fixes 2014-11-18 22:37:51 -05:00
Julian Dolby 1a4757cf10 add option to allow getMethodto be handled only for user code. a
scalability compromise.
2014-11-18 22:30:47 -05:00
Manu Sridharan f5f992035a more build files for maven central jars 2014-11-13 21:16:11 -08:00
Cosmin Radoi e2dce7be00 SSAInstruction equals based on iindex 2014-11-10 19:40:45 -06:00
Julian Dolby 68ad4dbba6 first cut at heap graph for field-based pointer analyais 2014-10-30 21:14:12 -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
Julian Dolby c9ad359d65 new test to remind me that prototype no longer works with correlation tracking:
com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/test/TestPrototypeCallGraphShapeRhino.java
com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/TestPrototypeCallGraphShape.java
com.ibm.wala.cast.js.test.data/examples-src/pages/prototype.html

work (not yet finished) on fixes to property accesses for JavaScript:
com.ibm.wala.cast/source/java/com/ibm/wala/cast/ipa/callgraph/AstSSAPropagationCallGraphBuilder.java
com.ibm.wala.cast.java/src/com/ibm/wala/cast/java/ipa/callgraph/AstJavaSSAPropagationCallGraphBuilder.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/JSSSAPropagationCallGraphBuilder.java

currently unused tests to remind me to fix bugs:
com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/TestSimpleCallGraphShape.java
com.ibm.wala.cast.js.test.data/examples-src/tests/loops.js
com.ibm.wala.cast.js.test.data/examples-src/tests/primitive_strings.js

fixes to exception handler code generation in JavaScript:
com.ibm.wala.cast.js.rhino/source/com/ibm/wala/cast/js/translator/RhinoToAstTranslator.java
com.ibm.wala.cast.js.test.data/examples-src/tests/try.js
com.ibm.wala.cast.js.test/harness-src/com/ibm/wala/cast/js/test/TestSimpleCallGraphShape.java

fixes to make the system build on both juno and luna
com.ibm.wala.cast.js.test.data/pom.xml
pom.xml
targets/e42/e42.target
targets/e44/e44.target
targets/pom.xml
com.ibm.wala.core.tests/META-INF/MANIFEST.MF
com.ibm.wala.dalvik.test/META-INF/MANIFEST.MF
com.ibm.wala.ide.jdt.test/META-INF/MANIFEST.MF
com.ibm.wala.ide.jdt/source/com/ibm/wala/cast/java/translator/jdt/FakeExceptionTypeBinding.java
com.ibm.wala.ide.jdt/source/com/ibm/wala/ide/util/JavaEclipseProjectPath.java
com.ibm.wala.ide.jsdt.tests/META-INF/MANIFEST.MF
com.ibm.wala.ide.jsdt.tests/src/com/ibm/wala/ide/jsdt/tests/AbstractJSProjectScopeTest.java
com.ibm.wala.ide/src/com/ibm/wala/ide/util/EclipseProjectPath.java
com.ibm.wala.ide/src/com/ibm/wala/ide/util/ProgressMonitorDelegate.java

beginnings of "pointer analysis" on top of field-based analysis
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/callgraph/fieldbased/flowgraph/FlowGraph.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/callgraph/fieldbased/flowgraph/vertices/PropVertex.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/callgraph/fieldbased/flowgraph/vertices/RetVertex.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/callgraph/fieldbased/flowgraph/vertices/VarVertex.java
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/callgraph/fieldbased/flowgraph/vertices/VertexFactory.java
com.ibm.wala.core/src/com/ibm/wala/ipa/callgraph/propagation/PointerAnalysis.java
com.ibm.wala.core/src/com/ibm/wala/ipa/callgraph/propagation/cfa/ExceptionReturnValueKey.java

fixes for crashes in correlartion tracking
com.ibm.wala.cast.js/source/com/ibm/wala/cast/js/ipa/callgraph/correlations/extraction/ClosureExtractor.java

fixes for Dalvik IR generation
com.ibm.wala.core/src/com/ibm/wala/cfg/BytecodeCFG.java
com.ibm.wala.core/src/com/ibm/wala/cfg/ShrikeCFG.java
com.ibm.wala.core/src/com/ibm/wala/ssa/SSACFG.java
com.ibm.wala.dalvik.test/source/com/ibm/wala/dalvik/drivers/APKCallGraphDriver.java
com.ibm.wala.dalvik.test/source/com/ibm/wala/dalvik/test/callGraph/JVMLDalvikComparison.java
com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/classLoader/DexCFG.java
com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/dex/instructions/UnaryOperation.java
com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ssa/AbstractIntRegisterMachine.java
com.ibm.wala.dalvik/src/com/ibm/wala/dalvik/ssa/DexSSABuilder.java

fixes to stack map generation when instrumenting for Java 7
com.ibm.wala.shrike/src/com/ibm/wala/shrike/cg/DynamicCallGraph.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/ConstantInstruction.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/analysis/Analyzer.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/analysis/ClassHierarchy.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/analysis/Verifier.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeBT/shrikeCT/ClassInstrumenter.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeCT/StackMapConstants.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeCT/StackMapTableReader.java
com.ibm.wala.shrike/src/com/ibm/wala/shrikeCT/StackMapTableWriter.java
2014-10-15 16:01:38 +09:00
Julian Dolby 4e52c00a4b re-enable assertion 2014-10-10 17:44:06 -04:00
Julian Dolby 14c9c96515 merge of java 7 changes.
fixes for Dalvik commit.
2014-10-06 17:41:58 -04:00
Julian Dolby 6c47da8091 Merge branch 'master' of https://github.com/wala/WALA
Conflicts:
	com.ibm.wala.core.tests/src/com/ibm/wala/core/tests/shrike/DynamicCallGraphTestBase.java
	com.ibm.wala.ide.jdt.test/launchers/JDTJava15IRTests.launch
2014-10-06 15:43:42 -04:00
Julian Dolby 36709b9d1a java 7 support, with much pain for stack maps :) 2014-10-06 15:34:16 -04:00
Julian Dolby a1bc84356d scandriod merge 2014-10-01 21:32:36 -04:00
Julian Dolby 774be73672 Merge https://github.com/jgf/wala-mirror 2014-09-11 10:43:13 -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
Martin Mohr 32e776fa15 various fixes in natives_no_model.xml
* add type info in readBytes/writeBytes
* add summary for writeBytes with three parameters
2014-08-01 12:46:33 +02:00
Martin Mohr d762293ba1 support the addition of type information for element in aaload/aastore
fall back to java.lang.Object if no type is given
2014-08-01 12:46:33 +02:00
Juergen Graf a13c0df9bd cleanup in dalvik frontend related files 2014-08-01 12:32:22 +02:00
Juergen Graf c05415720e remove custom change markers for code that will be merged to main branch 2014-08-01 12:27:22 +02:00
Juergen Graf 7769c5b126 minor changes: remove debug code and sync with main branch 2014-08-01 12:27:21 +02:00
Juergen Graf eb9e74f442 add/remove @SuppressWarnings to keep in sync with wala main branch 2014-07-30 16:17:37 +02:00
Juergen Graf 7ad38161b1 remove dependency from slf4j logger in wala.core project 2014-07-30 15:44:17 +02:00
Juergen Graf 8f6ec6bc54 cleanup 2014-07-30 15:05:15 +02:00
Juergen Graf 60228a8c0d cleanup ssa instructions in wala.core 2014-07-29 19:43:58 +02:00
Juergen Graf 6f8aee80c6 Merge branch 'wala' into master 2014-07-28 17:09:02 +02:00
Julian Dolby 3910608d60 JavaScript slicer support 2014-07-11 11:55:02 -04:00
Julian Dolby dd3124479e allow control flow in induced cfgs, and various related fixes 2014-07-08 14:44:06 -04:00
Julian Dolby d6ffcdc3bb more checking 2014-07-08 14:41:28 -04:00
Martin Mohr d5e32d6636 model some native methods of class System 2014-07-07 20:58:21 +02:00
Michael Heilmann ea40719069 Merge branch 'master' of https://github.com/wala/WALA into development 2014-06-26 17:52:47 +02:00
Michael Heilmann 0bb5e6998e Remove redundant casts and imports, improve doc comments 2014-06-26 17:51:26 +02:00
Manu Sridharan 8e33a70c91 Merge pull request #53 from aaandrewww/master
Fix bug in ClassHierarchy.getLeastCommonSuperClass and imprecision in type inference
2014-06-22 12:08:59 -07:00
markus ec2d2e9c9c fixed JavaDoc warnings 2014-06-20 10:31:27 +02:00
markus 50c9c4a406 fixed JavaDoc warnings 2014-06-20 10:27:05 +02:00
Andrew Johnson be4e805dc4 Merge remote-tracking branch 'wala/master' 2014-05-22 00:40:20 -04:00
Andrew Johnson c3202533f7 Fixing bug in ClassHierarchy.getLeastCommonSuperclass
If C1 extends C2 extends C3 getLeastCommonSuperClass(C1,C2) would give C3 instead of C2
2014-05-21 23:28:11 -04:00
Juergen Graf 5a6f6c88e9 Merge branch 'wala' into master 2014-05-21 12:49:46 +02:00
Juergen Graf a35d03bed6 fix wala.core testcases 2014-05-20 22:32:20 +02:00
Juergen Graf 4772f36d47 add standard type parameter to most pointer analysis references. When it breaks we move back to ? extends InstanceKey. 2014-05-20 22:00:06 +02:00
Juergen Graf ef4513d377 revert PointerAnalysis hack that makes containsAny() and contains() methods in OrdinalSet unusable 2014-05-20 19:52:01 +02:00
Sam Blackshear 0fba08e581 adding comment explaining why instanceof check was replaced 2014-05-20 11:50:40 -06: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
Sam Blackshear fd47590634 Check class of parent variable directly rather than using instanceof check. Needed to get correct behavior for subclasses of ClassHierarchyMethodTargetSelector 2014-05-20 09:30:54 -06:00
Michael Heilmann 080fc8253e Merge branch 'master' of https://github.com/wala/WALA into development 2014-05-20 13:18:52 +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
Michael Heilmann de1b61db5e using theirs 2014-05-20 13:12:01 +02:00
Julian Dolby 7c0de83e74 move to Reader API to help with annoying /r/n issues is source mapping 2014-05-20 13:11:55 +02:00
Manu Sridharan dddd830d14 synchronize methods. Fixes #43 2014-05-20 13:11:47 +02:00
Michael Heilmann 68efae8b58 using theirs 2014-05-20 13:11:44 +02:00
Manu Sridharan 05488894a4 fix compile errors for com.ibm.wala.core 2014-05-20 13:11:41 +02:00
Julian Dolby 04e1fb9d72 require 1.7 SE 2014-05-20 13:11:38 +02:00
Julian Dolby 6511d6acc3 move java 7 dependent code to core, so util works with java 6 2014-05-20 13:10:49 +02:00
Julian Dolby dbd9c60d4f type generalization 2014-05-20 13:10:22 +02:00
Sam Blackshear 4b7852472d Update SSAConditionalBranchInstruction.java
Changing SSAConditionalInstruction.isObjectComparison(): previous definition returns true for comparisons of Primordial scope objects, but false for Application scope objects. The update version returns true in both cases
2014-05-20 13:08:59 +02:00
Michael Heilmann f3dac38bc9 remove empty package 2014-05-20 12:49:58 +02:00
Michael Heilmann d1f6564d23 fix doc comments 2014-05-20 12:49:56 +02:00
Michael Heilmann 349a8f8355 move GetMethod context, interpreter and selector into appropriate package, fix copyright notice 2014-05-20 12:49:53 +02:00
Michael Heilmann 525c203a8b improve doc comments 2014-05-20 12:49:45 +02:00
Michael Heilmann 6c5ef65d5f commit GetMethod context, interpreter and selector 2014-05-20 12:49:23 +02:00
Andrew Johnson b29bc2dac0 Fix imprecision in type inference when merging a point array type and cone array type
In TypeInference when merging a PointType with a ConeType it is safe to return the cone type if
the underlying types are the same. Previously, if an array cone type and array point type were
merged this would result in a java.lang.Object even when the two arrays had the same base type.
Checking for equality first may also save a few cycles for reference types since the
isSubclass check is no longer performed for identical types.
2014-05-19 22:02:45 -04:00
Juergen Graf d95e318234 Merge android specific changes from Tobias Blaschke into main branch. 2014-05-19 13:37:15 +02:00
Juergen Graf cf9d623b40 change to compile in eclipse - move files from util to core due to dependencies 2014-05-19 13:24:47 +02:00
Manu Sridharan fee72dfb66 Update AbstractNestedJarFileModule.java
Fixes #45
2014-05-16 10:30:05 -07:00
Martin Mohr c6cb700804 model for a native method SocketInputStream 2014-05-16 15:36:55 +02:00
Martin Mohr a6917e46ad Summary of FileOutputStream.writeBytes: simulate reading from array and writing to outside ('real world') 2014-05-16 15:19:21 +02:00
Martin Mohr 671bbcec01 Method Summaries: add support for reading array load instructions from XML 2014-05-16 15:19:21 +02:00
Martin Mohr 72a0b70e1c model for FileOutputStream.writeBytes 2014-05-16 15:19:21 +02:00
Martin Mohr 51b28a45b6 let FileInputStream.readBytes() modify the given array 2014-05-16 15:18:02 +02:00
Juergen Graf 7c80cd3c97 allow a default method state to be injected into the interprocedural exception analysis 2014-05-06 23:55:49 +02:00
Juergen Graf cc5162b95f remove some compiler warnings in nullpointer analysis 2014-05-06 23:55:49 +02:00
Juergen Graf 00a9b03389 always compute exception pruned cfg, not only when standard analysis was successful 2014-05-06 23:53:18 +02:00
Julian Dolby 91fe95c05d classpath file. i have no idea where it went 2014-04-30 10:13:10 -04:00
Julian Dolby 92bec0cc0b move to Reader API to help with annoying /r/n issues is source mapping 2014-04-29 11:21:01 -04:00
Julian Dolby de5f123fbd Merge branch 'master' of https://github.com/wala/WALA 2014-04-29 09:21:33 -04:00
Julian Dolby 05cf4e4f66 Merge branch 'master' of https://github.com/wala/WALA
Conflicts:
	com.ibm.wala.core/.classpath
2014-04-29 09:21:18 -04:00
Manu Sridharan 600e5ad50f synchronize methods. Fixes #43 2014-04-24 12:35:34 -07:00
Julian Dolby ab5ee8b3a5 merge 2014-04-24 09:01:01 -04:00
Manu Sridharan a4c1774ee0 fix compile errors for com.ibm.wala.core 2014-04-11 12:54:59 -07:00
Tobias Blaschke 1857121a44 Add "Custom Change" where applicable
Added the lines
BEGIN Custom Change
END Custom Change
2014-04-11 17:58:33 +02:00
Tobias Blaschke 851594cff5 Make Intents immutable when attached to Context
Oops.
Fixes in intent-Resolution
2014-04-11 17:56:47 +02:00
Tobias Blaschke abcd578a61 Use getters and setters for Intents, add explicit-attribute
These Changes are necessary to make the target of an Intent changeable.
Additionaly some preparing changes in the IntentMap
2014-04-11 17:56:46 +02:00
Tobias Blaschke eced01bcb0 Add debug info and toString methods 2014-04-11 17:54:03 +02:00
Tobias Blaschke a9864a5dab Added specialized instantiators.
Creating an instance of e.g. Context would pull in all compontents
yielding a ununsable result.
2014-04-11 17:53:13 +02:00
Tobias Blaschke 00d711dd64 InducedCFG/GoTo: Handle basic block boundarys
Building the CFG with a SSAGotoInstuction was buggy: Oftain the wrong
jump-target was selected. This has bin fixed.

Additionally InducedCFG now automaticly breaks the basic-block at the
jump-target.

Jumping to Phi-Instructions however is still unsupported (as they are
not part of the cfg-instructions)
2014-04-11 17:53:13 +02:00
Tobias Blaschke d5a98f9479 InducedCFG: Accept holes in the local Instruction array
The Instruction array in InducedCFG contains null-entries. Wheter that's
intentional or not, skipp over them.
2014-04-11 17:53:12 +02:00
Tobias Blaschke 2d9486b2a9 BUG: empty BB in InducedCFG.addExceptionalEdges
Current workaround is to ignore it
2014-04-11 17:53:11 +02:00
Tobias Blaschke f8970f92b7 Enable variable-names in Synth. Methods
Using a SummarizedMethodWithNames instead of a normal one enables human
readable variable names in WALA-Synthetic methods. This should help
when debugging.
2014-04-11 17:53:10 +02:00
Tobias Blaschke ece98a0628 Tools to facilitate buildin Synth. Methods
Have a toolkit that aids in building WALA-synthetic methods by helping
to avoid common mistakes and managing SSA-Variables.

See bundled package-info.java for more detail
2014-04-11 17:53:10 +02:00
Tobias Blaschke 34faac169d Fixes on AndroidAnalysisScope
Depending on the method used generating an AnalysisScope failed for
Android-Apps. Especially depending on wheater data was used from a
jar-resource or depending on exclusions.txt
2014-04-11 17:51:59 +02:00
Tobias Blaschke 6c5f243ea5 Add GoTo-instruction for Synt. Methods (limited)
Implemented the GoTo istruction reachable through the
JavaInstructionFactory.

Caution:
- It has to be asshured manually that a basic block starts at the target
- One may not jump to a Phi-Instruction
2014-04-11 17:50:17 +02:00
Tobias Blaschke dcf5cd4a1c On progress monitoring
Small changes on progrss monitoring that enable having an actual
progress-meter instead of just having heart-beat information.
2014-04-11 17:50:17 +02:00
Tobias Blaschke 9ba0c06cf3 Add misc helper functions
Added small helper functions that may provide handy
2014-04-11 17:50:17 +02:00
Tobias Blaschke 964a0d86b9 Debug-Output only
No changes on the inner workings, only provided better Debug-Messages.
2014-04-11 17:50:17 +02:00
Julian Dolby 63a7570bcf require 1.7 SE 2014-04-11 10:00:39 -04:00
Juergen Graf 561472dfe5 new java versions in osx have different java.home - fix autodetection 2014-03-10 14:43:29 +01:00
Julian Dolby 3bc0ad9a2c move java 7 dependent code to core, so util works with java 6 2014-03-03 14:30:19 -05:00
Martin Mohr db263ecefc additional 'pruning policy' to not prune anything; could be useful if one wants to temporarily switch off pruning without changing too much code 2014-02-25 16:59:08 +01:00
Martin Mohr 7f7684b57e remove IBM header from class contributed by JOANA project 2014-02-25 16:56:58 +01:00
Juergen Graf ce833aefe2 fix bug: count only really unresolved classes in ClassHierarchy 2014-02-17 15:01:18 +01:00
Julian Dolby 4c25c40789 type generalization 2014-02-08 22:52:19 -05:00
Juergen Graf 6d0a6ee0e8 add return value keys for RTA pointer analysis 2014-02-04 04:02:30 +01:00
Sam Blackshear 928555d425 Update SSAConditionalBranchInstruction.java
Changing SSAConditionalInstruction.isObjectComparison(): previous definition returns true for comparisons of Primordial scope objects, but false for Application scope objects. The update version returns true in both cases
2013-12-27 13:06:39 -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
Martin Mohr dcfd813ced convert default pruning policy into public singleton 2013-10-28 16:52:42 +01:00
Martin Mohr 30d6a458c3 extend the call graph pruner to allow for other pruning policies than 'keep branch if you find application node on it' 2013-10-28 16:42:36 +01:00
Julian Dolby cfb516a758 code to handle 'Class-Path' in jar files added to the scope. done for a
specific use, and so probably a little flaky.
2013-10-01 13:59:30 -04:00
Julian Dolby a8fdf96cde fix (i think) to edge computation caching 2013-09-26 13:15:32 -04:00
Manu Sridharan 8984637b86 make classes public. Fixes #32 2013-09-16 10:32:29 -07:00
Martin Mohr 3a454d01bd fallback ContextInterpreter to avoid CodeScanner if this would crash 2013-08-28 18:46:45 +02:00
Martin Mohr cbb3f5db7b Bugfix: kill evil, cache-killing line 2013-08-21 16:55:42 +02:00
Julian Dolby beab92e359 Fixed bugs in the front end handling esoteric cases of weird control
flow.

added support for JavaScript projects read from Eclipse that are based
on HTML files as well as JavaScript files
2013-07-30 14:04:08 -04:00
Manu Sridharan e11f8b3182 patch to improve mapping of classes to source files 2013-07-08 15:26:28 -07: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 55b64712fc merge conflict 2013-06-25 12:02:12 -04:00
Julian Dolby 080325b5f6 merge 2013-06-25 11:57:37 -04:00
Julian Dolby 3015d1c5f9 added container access to ModuleEntry 2013-06-25 11:53:58 -04:00
Manu Sridharan 05a9961108 add missing @Override annotations; no semantic change 2013-06-10 14:37:19 -07:00
Manu Sridharan 0a7a3092b1 trying to get around classloading issues 2013-05-27 09: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 7ca109967d read J2SE jars from bootclasspath if wala.properties cannot be loaded 2013-05-25 16:05:25 -07:00
Andreas Sewe dc03348bce Fix thread-safety bug in BytecodeClass.computeMethodMap
The map must not be modified after BytecodeClass.methodMap
has become non-null.
2013-05-24 10:25:01 +02:00
Manu Sridharan 3b1889121b add missing copyright headers 2013-05-22 15:39:19 -07:00
Julian Dolby dd6510da29 Merge branch 'master' of https://github.com/wala/WALA.git 2013-05-15 14:04:44 -04:00
Manu Sridharan c4ce3999cd fix possible NPE 2013-05-15 10:55:58 -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 89e90cd44e rename computeMethodMap() to computeMethodMapIfNeeded() 2013-05-07 14:59:12 -07:00
Andreas Sewe bc2594237b Made BytecodeClass.computeMethodMap thread-safe 2013-05-07 14:56:06 -07:00
Andreas Sewe d0b5e8ddd2 Made TypeName.findOrCreate thread-safe 2013-05-07 14:54:14 -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 eac23e97a9 enable reading scope files from jars 2013-05-02 11:43:49 -07:00
Manu Sridharan e6bef253ff Merge branch 'master' into maven 2013-05-02 10:58:55 -07:00
Manu Sridharan 897268c7f9 fix comment 2013-04-30 12:09:55 -07:00
Manu Sridharan 1f254e9b74 formatting, fix warnings 2013-04-29 10:12:12 -07:00
Marcel Bruch 7c2d18cd58 [releng] added preliminary maven tycho build support 2013-04-29 13:13:22 +02:00
Manu Sridharan f439646cb1 fix potential NPE in AbstractRootMethod.addAllocation() 2013-04-15 08:58:42 +02:00
Manu Sridharan 00eb1d2bd2 Set all projects to build against Java 6; no semantic change. Fixes #20 2013-04-10 16:01:27 -07:00
Manu Sridharan dae0b33233 Merge branch 'master'
Conflicts:
	com.ibm.wala.cast.java/src/com/ibm/wala/cast/java/loader/JavaSourceLoaderImpl.java
	com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/test/TestSimpleCallGraphShapeRhino.java
	com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/test/TestSimplePageCallGraphShapeRhino.java
	com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/test/TestSimplePageCallGraphShapeRhinoJericho.java
	com.ibm.wala.cast.js.rhino.test/harness-src/com/ibm/wala/cast/js/vis/JsViewerDriver.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/loader/JavaScriptLoader.java
	com.ibm.wala.cast/source/java/com/ibm/wala/cast/tree/CAstEntity.java
2013-04-09 15:56:47 -07:00
Manu Sridharan 11c6619c7f Variety of changes to JS front end.
- crash fixes
- small enhancements to prologue and preamble
- tighter handling of timeouts during CG construction
2013-04-09 15:47:22 -07:00
Manu Sridharan 368daf9427 organize imports 2013-04-09 14:16:01 -07:00
Manu Sridharan a7195852b1 don't cache synthetic method IR / DU in ExplicitNodes 2013-04-09 10:01:19 -07:00
Cosmin Radoi d137143ecf warning on SSAInstruction equals() 2013-04-08 17:08:32 -05:00
Manu Sridharan 0204a7fead Merge pull request #15 from cos/cgnode-weakref-ir-defuse
use WeakReference so that CGNode.getIR() doesn't hit the cache too often
2013-04-08 14:27:50 -07:00
Manu Sridharan 9549da9954 read runtime-visible annotations for fields 2013-04-08 13:50:26 -07:00
Manu Sridharan fa14d7a73d Require that gen'd vector contains 0. fixes #8 2013-04-08 10:51:25 -07:00
Julian Dolby 321e925660 work on CHA 2013-04-03 12:12:43 -04:00
Juergen Graf 61d7a33928 remove warnings in com.ibm.wala.core 2013-03-12 00:50:17 +01:00
Juergen Graf 80920368ef incorporate changes from other branch
- remove extraneous printing
- fixes for parse errors in JS and HTML
- fixes for handling parse errors in JS and HTML
- update comments
- Change BitVectorRepository to use LinkedLists
- improve javadoc
- fix for for in contexts for NEVER case
- missing VectorKill println method
2013-03-12 00:21:26 +01:00
Cosmin Radoi 3b48685d1d use WeakReference so that CGNode.getIR() doesn't hit the cache too often 2013-02-19 15:30:06 -06:00
Manu Sridharan 1cf9a0008b improve javadoc 2013-02-12 17:15:04 -08:00
Manu Sridharan 8e8e5fa8ba Merge branch 'minor' of https://github.com/cos/wala into cos-minor
Conflicts:
	com.ibm.wala.core/src/com/ibm/wala/dataflow/IFDS/VectorKillFlowFunction.java
2013-02-06 16:54:46 -08:00
Cosmin Radoi aa6487fafc missing VectorKill println method
modeled after the VectorGen method
2013-02-06 18:21:01 -06: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
Julian Dolby afccdd2189 Annotation support 2013-02-02 21:27:45 -05:00
Martin Mohr 8806b7c119 refine last commit 2013-01-31 16:48:04 +01:00
Martin Mohr b21fd9afb3 relax visibility of some methods in SSACFG (for dalvik frontend) 2013-01-31 16:41:27 +01:00
Manu Sridharan 590347f171 Properly fix path-with-spaces bug.
The previous fix happened to work, but it did the URL decoding
in the wrong place.
2013-01-30 21:05:23 -08:00
Manu Sridharan 182363bf88 fix bug involving paths with spaces 2013-01-30 17:29:41 -08:00
Manu Sridharan ec8a0f1294 Properly return null as default constructor of an array.
Patch from Christophe Foket on the mailing list.
2013-01-25 10:29:49 -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
Manu Sridharan 6ed7b5a88e javadoc 2013-01-10 09:48:38 -08:00
Manu Sridharan 29c73cea83 Merge branch 'lexical-access-info' 2013-01-09 14:27:14 -08:00
Manu Sridharan 202d5d525f small Javadoc fix 2013-01-09 14:25:41 -08:00
Julian Dolby 9aa474fdb1 1) added InstanceKey.getCreation sites and its implementations
2) fixes for issues with keys representing dynamic properties
  i) all properties are converted to strings, in an approximation of JS
semantics
3) fix to handling of instance keys representing numbers in binary +;
now it understands that adding constant keys of type Number requires
adding a non-constant Number key to the lval
2013-01-07 20:18:27 -05:00
Manu Sridharan 8ed998a249 extract some generally useful code from ModRef 2013-01-03 15:57:38 -08:00
Juergen Graf 0d12f90232 add additional definition of natives.xml that has no references to com.ibm.wala.model classes 2012-12-18 14:11:55 +01:00
Juergen Graf 41fdb087bb ignore nativespec if attribute is null 2012-12-15 03:59:24 +01:00
Manu Sridharan 77b81b4181 Handle duplicate field names between subclass and superclass.
Patch from Christophe Foket on the mailing list.
2012-11-30 09:18:00 -05:00
Juergen Graf 9fac9e9a30 Merge branch 'wala' into master 2012-11-30 04:46:24 +01:00
Manu Sridharan 070e3989cf fix missing detection of certain static initializer calls
Patch from Christophe Foket on the mailing list.
2012-11-27 14:04:00 -05:00
Manu Sridharan 821479d1a6 remove unnecessary casts 2012-11-21 11:39:25 -08:00
Juergen Graf b82d5dba90 Merge branch 'wala' into master 2012-11-06 04:23:10 +01:00
Juergen Graf 8383eb440f make mutable cfg an actual control flow graph 2012-11-05 21:30:59 +01:00
dolby fae5c86114 fixes for users of JDT interfaces, such as Miniatur/MemSAT 2012-10-01 13:11:10 -04:00
Manu Sridharan 24eb803211 organize imports; no semantic change 2012-09-04 16:24:37 -07:00
Manu Sridharan 60db861a5f complete conversion to Unix line endings 2012-09-04 16:05:49 -07:00
Manu Sridharan 56f3d847a5 more conversion to Unix line endings 2012-09-04 15:59:50 -07: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
dolby 4cc3a08b63 comment attempting to explain how 'dimensionality' works 2012-08-31 15:45:56 -04:00
dolby 319eacc529 merge changes and changes for atomic sets work 2012-08-29 16:35:34 -04:00
Manu Sridharan 419d1d50cc Merge branch 'github_master' and remove Eclipse dependencies.
Specifically, rewrite ProgressMaster to not depend on Eclipse, and move
to com.ibm.wala.util.  Now, we can use timeout-based code in packages
without introducing an Eclipse dependency.
2012-08-28 12:39:52 -07:00
Manu Sridharan 06205fdb73 patch from mailing list to handle different constructor arguments for ClassLoaderImpl 2012-08-28 10:51:20 -07:00
dolby e946d1deb9 fixes for misuse of getDimensionality 2012-08-28 12:02:48 -04:00
dolby ffff4c244d fix for bug in reading xml summaries 2012-08-28 11:10:46 -04:00
Manu Sridharan bb2c45803c Merge branch 'github_master' into internal_merge 2012-08-21 16:57:27 -07:00
Manu Sridharan cf04da7613 handle a couple of corner cases. some (very) basic support for pointer / reference types 2012-08-21 16:56:50 -07:00
Manu Sridharan bab4777e4c some (very) basic support for pointer / reference types 2012-08-21 16:56:18 -07:00
Manu Sridharan 800203a71f improved documentation 2012-08-21 16:55:30 -07: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
Manu Sridharan 7aaba4bc5a Bug fix in dispatch logic + test
Due to constant parameters, we can't assume that constraints don't need
to be generated when we've already seen a target at a call site (since
the previous constraints may have only passed certain constant parameter
values, rather than all parameter values).  Add a check to handle these
cases correctly.
2012-07-30 12:40:48 -07:00
Manu Sridharan 2299d8a13a improve caching of receiver values when handling dispatch 2012-07-17 12:11:55 -07:00
Juergen Graf 883b5f2437 detect catch all and remove exception flow to exit then 2012-07-17 20:05:51 +02:00
dolby 4b3cba710d changes from upstream 2012-06-29 15:47:54 -04:00
Juergen Graf cb02231692 Read jar files from input stream as a fallback. Do not rely on existsing files. 2012-06-08 15:24:38 +02:00
Juergen Graf 10792bec73 Merge branch 'wala' into master 2012-05-16 14:02:20 +02:00
Manu Sridharan 0938354288 Fix for bug reported by Thomas Deuster on mailing list.
The issue was that it's possible for multiple invoke instructions with
different actual parameters to be associated with a single CallSiteReference.
In this case, the invariant parameters for each invoke instruction may differ.
2012-05-15 09:40:39 -06:00
Daniel Perelman abeba01a16 Made CallString's .toString() more informative. 2012-05-14 17:58:29 -07:00
Daniel Perelman 49c00ca231 Made CallStringContextSelector correctly call base's getRelevantParameters(). 2012-05-14 17:57:28 -07:00
Daniel Perelman f049b24934 Added getters used in my code. 2012-05-14 17:55:40 -07: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 28a351200d handle invocations of static methods in ReceiverTypeContextSelector (patch from Daniel Perelman) 2012-05-03 16:30:55 -06:00
Juergen Graf c71fa6674a Merge branch 'wala' into master 2012-04-19 14:39:05 +02:00
Juergen Graf 88ca1eafad interproc exception analysis: remove unneccessary special treatment of fakeRoot 2012-04-19 14:29:58 +02:00
Manu Sridharan 02ba68a349 update manifests for move of the CorePlugin class 2012-04-17 15:37:27 -04: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 e0d3df8ea7 Merge branch 'fileprovider-instance' into eclipse-dep 2012-04-16 14:57:42 -04:00
Manu Sridharan 2edb070437 changed FileProvider to have instance methods 2012-04-16 14:57:14 -04:00
Manu Sridharan 1b4e0828d6 remove Eclipse dependencies from wala.core MANIFEST.MF; still need to fix up code 2012-04-16 13:47:49 -04:00
Juergen Graf 6a8e8fe018 remove no longer needed work-around for duplicate field names 2012-04-04 11:53:17 +02:00
Juergen Graf 1090e59717 Merge branch 'wala' into master 2012-04-04 11:27:23 +02:00
msridhar1 676a72bac2 fix for issue 3506051 from SourceForge tracker
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4555 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-04-03 22:48:10 +00:00
msridhar1 a28f0df3b7 change resolveField() to pass type when resolving a field
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4553 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-04-03 22:41:21 +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
Juergen Graf 34674387e6 code cleanup of nullpointer analysis
- replace tabs with whitespace
- adjust documentation to refer to renamed stuff
2012-03-30 13:43:57 +02:00
Juergen Graf acde4add28 add toString method for interprocedural exception analysis result 2012-03-30 13:10:40 +02:00
Juergen Graf 2fdd730c60 add assertion for name clashes of field with same name but different type - as it may occur in obfuscated bytecode 2012-03-29 02:12:29 +02:00
Juergen Graf 0a5cc40347 added interface for convenient computation of interprocedural nullpointer analysis 2012-03-29 02:08:05 +02:00
Juergen Graf 5ab421aba2 added a small disclaimer to the interprocedural nullpointer analysis 2012-03-29 01:08:31 +02:00
Juergen Graf d35bde3fe9 add cancel exception to interproc nullpointer analysis 2012-03-29 00:57:09 +02:00
Juergen Graf 99a5958c7e nullpointer analysis code cleanup 2012-03-29 00:50:05 +02:00
Juergen Graf 9033474819 first version of interprocedural nullpointer analysis 2012-03-28 22:30:16 +02:00
Juergen Graf f7c56b0b34 fix typo in intrapro nullpointer analysis 2012-03-28 22:29:07 +02:00
Juergen Graf d94a3d5b64 work around multiple fields with single name 2012-03-19 14:58:41 +01:00
Juergen Graf 7477b1730b Merge branch 'wala' into master 2012-03-19 13:33:48 +01:00
dolby-oss a9ec87f360 Changes motivated by analysis issues in JavaScript. The main change is that calls of the form f.x() in JavaScript are now analyzed like 'method calls' so that the 'this' pointer in the receiver functions can be filtered based upon the types that actually have the method being invoked. This requires much more dynamic filtering than in a language like Java, since properties like 'x' are simply properties that happen to hold functions, and so can be assigned in a first-class manner. Thus, the filtering needs to handle variance in both the types and the values of their properties; this is implemented as multiple levels of abstract object directed side effect equations in the dataflow system.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4535 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-03-01 02:45:51 +00:00
dolby-oss 5f992d2ef6 avoid hitting IR cache unnecessarily
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4524 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-21 13:47:44 +00:00
dolby-oss c187dcaeb0 add source-level names to dump of IR
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4522 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-21 13:46:11 +00:00
msridhar1 ec7be6dc39 Got rid of IntegerContextItem and BooleanContextItem and replaced them
by uses of ContextItem.Value.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4514 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:27:16 +00:00
msridhar1 ddfb019e68 optimization in dispatch logic. further optimization possible, and more
comments still needed

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4512 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:26:47 +00:00
msridhar1 965896c210 add general recursion bounding via an additional context selector. Also, completely eliminate dependence on contexts for correct pointer analysis with new lexical scheme.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4496 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:23:21 +00:00
msridhar1 92d8dc1e3d Revert "refactor context selectors: extract delegation into ComposedContextSelector"
This reverts commit 7ff1219c5baed388a82d14fcf81d2b1f456c4e95.  That commit broke
a dojo test, and I'm not sure why.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4491 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:21:18 +00:00
msridhar1 edd300cf00 refactor context selectors: extract delegation into ComposedContextSelector
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4489 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:20:26 +00:00
msridhar1 a34b8967e1 Additional timeout check in SSAPropagationCallGraphBuilder.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4473 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:17:08 +00:00
dolby-oss 4c6d062dbb blunt force trauma to CAst frond end:
1) Structural changes in the AstTranslator to allow retranslation and generation of custom IR.  This is mostly moving state from the translator itself into the context.
2) Some refactoring to share some AST generation code across the Java and JavaScript front ends.
3) Switching to the latest Rhino, release 1.7R3; this is a pervasive change to the JavaScript Rhino translator, since it involves switching to the new AST interface in Rhino.
4) Common code to, as an option, translate Do-style loops by replicating the loop body.  This allows the use of CAstNode.LOOP forms for such loops.
5) Some bug fixes to the mechanisms of the CAstRewriter to handle weird control flow cases.
6) An example of retranslation to specialize JavaScript methods based on how many arguments they receive at call sites.


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4425 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-27 20:15:33 +00:00
msridhar1 5a3470a674 remove debug print
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4424 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-24 16:28:57 +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 2f86937ae1 some more diagnostic code in TestUtil, related changes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4399 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:46:27 +00:00
msridhar1 9e386ff310 re-implement delegating context, to ensure we have a proper equals() and hashCode()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4398 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:46:08 +00:00
msridhar1 6a2dc42d49 fix a couple of NPEs
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4338 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:28:02 +00:00
msridhar1 14c4cdb251 bug fix in SSAPropagationCallGraphBuilder: allow empty points-to sets for interesting non-receiver arguments
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4335 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:27:03 +00:00
msridhar1 33378fd071 Added option to warn about big points-to sets.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4330 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:25:20 +00: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 4edec7f18e remove unused imports
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4297 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-05 20:10:34 +00:00
msridhar1 d326e5e9f2 bug fixes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4292 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-12-28 17:03:55 +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
Martin Mohr 51eefa355b find java runtime lib if property has not been set 2011-11-22 14:26:56 +01:00
Juergen Graf bf923dc2b5 progressmonitor can now be used to cancel operations 2011-11-22 14:26:30 +01:00
Juergen Graf 8494f98106 Merge branch 'wala' into master 2011-11-09 13:03:31 +01:00
sjfink d75e4455c6 delete obsolete comment
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4285 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-10-26 13:53:29 +00:00
Juergen Graf 0f66936790 Merge branch 'wala' into master 2011-10-26 14:34:59 +02:00
sjfink c274ecacc9 bug fix: deal with case when app-specific context selector and interpreter are null.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4284 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-10-25 13:55:32 +00:00
Juergen Graf 44a3dae093 Merge branch 'wala' into master 2011-10-21 15:15:20 +02:00
msridhar1 2723084bac ran into a method with 30 parameters. hopefully this is enough?
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4278 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-09-25 21:52:20 +00:00
Juergen Graf fa5a0aa452 mod ref field access analysis 2011-09-20 15:50:39 +02:00
Juergen Graf c240d41b4f Merge branch 'wala' into master 2011-08-16 22:16:32 +02: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
Juergen Graf 62820d2fba create default properties if no wala.properties file exists 2011-07-29 14:06:14 +02:00
Juergen Graf 26d65e9f9c added callgraph pruning to remove less relevant library methods 2011-07-28 12:08:59 +02:00
Juergen Graf 6877158843 load scope file from jar as fallback 2011-07-27 13:44:38 +02:00
Juergen Graf efb729e038 Merge branch 'wala' into master 2011-07-27 01:15:29 +02:00
msridhar1 82d751a814 try to fix javac compile errors
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4226 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-22 17:06:09 +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
Juergen Graf 496a98c4bd add possiblility to search existing types without creating new ones 2011-07-14 21:35:46 +02:00
Juergen Graf f5ac0c543f Merge branch 'wala' into master 2011-07-12 19:50:39 +00:00
msridhar1 fbfdb32b11 expose a field to subclasses
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4207 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-02 15:40:33 +00:00
msridhar1 ee3c8f3847 Thread a progress monitor through parts of pointer analysis constraint generation, so we can cancel if it's taking too long
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4193 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-06-30 18:59:29 +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
Juergen Graf f8d6f5b917 Merge branch 'wala' into master 2011-05-27 12:25:53 +02:00
Juergen Graf b84657d1a9 add some new classes from wala 2011-05-26 16:43:36 +02: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 53294397f8 javadoc, formatting
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4128 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-20 22:31:27 +00:00
dolby-oss 9006fce690 some bug fixes to CAst IR generation, especially in handling exceptions
cleanup of how JDT analysis engines work, to make using the JDT front end more modular
bug foxes to JavaScript handling, most notably fixing scoping of functions

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4123 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-13 16:27:15 +00:00
Juergen Graf a76f93a28c Merge branch 'wala' into master 2011-04-13 13:02:15 +02:00
msridhar1 2b87f070a7 make getBCInfo() synchronized to prevent duplicate code loading by different threads
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4113 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-12 19:20:13 +00:00
Juergen Graf 7c518d1867 added instruction index field to SSAInstruction (javascript not working atm) 2011-04-12 19:49:06 +02:00
Juergen Graf 8c04179fcc remove unused class of exception analysis 2011-04-12 17:02:39 +02:00
Juergen Graf 2d3052bede intraprocedural nullpointer exception analysis 2011-04-11 16:28:51 +02:00
Juergen Graf 5c43668553 Merge branch 'wala' into master 2011-04-11 16:40:48 +02:00
Juergen Graf bef3480898 fix for empty cfg entry node was incomplete... fix fixed ;) 2011-04-06 14:22:11 +02:00
dolby-oss fc366d728e added notion of source modules, which are presumed to be text files
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4083 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 14:58:58 +00:00
dolby-oss 3d95532603 added type parameter
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4082 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 14:58:15 +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
Juergen Graf cbb9f421a9 advanced sythetic instructions for initial points-to/aliasing set up 2011-03-30 13:03:16 +02:00
Juergen Graf fe5d5cdcb2 custom caching to guarantee: method.getIR() == method,getIR() - also for contained IR statements 2011-03-30 13:03:16 +02:00
Juergen Graf 56cdf169b0 distinguish control deps from data deps in the pdg 2011-03-30 13:03:16 +02:00
Juergen Graf baf67a8dbb setter for native spec (.xml) file
added fallback: load xml from filesystem if loading from jar does not work
2011-03-30 13:03:16 +02:00
Juergen Graf 211e542ee5 entry and exit nodes in every cfg 2011-03-30 13:03:16 +02:00
Juergen Graf b9cd802759 setter for pointerkey factory
public phi nodes
2011-03-30 13:03:16 +02:00
Juergen Graf 442975b603 implement hasEdge for exploded cfg + fix entry nodes with instruction 2011-03-30 13:03:16 +02:00
Juergen Graf 1a67e8817c remember unresolved classes 2011-03-30 13:03:16 +02:00
Juergen Graf 47711fd310 read enhanced bytecode postions from class attributes 2011-03-30 13:03:16 +02:00
Juergen Graf d7ebb57ee6 add substasks to progressmonitor 2011-03-30 13:03:16 +02:00
Juergen Graf e2a0abc119 only run dot-exe if the property is set 2011-03-30 13:03:16 +02: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 e33b9d3861 fix comment
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4075 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-03-21 16:03:36 +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 3a49f17ebc update code formatting for Eclipse 3.6
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4048 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-02-03 15:14:47 +00:00
msridhar1 0eb5fcb158 check for null argument
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4043 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-24 22:40:50 +00:00
dolby-oss 5a042f3f69 tighten typing for NumberedGraph, using covariance as allowed as of java 1.5
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4042 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-20 16:46:53 +00:00
sjfink 129ce380a4 migrate more stuff to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4040 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 22:57:35 +00:00
sjfink 5bd9c18b20 migrate more stuff to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4039 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 22:41:32 +00:00
sjfink 1c8924f766 migrate more stuff to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4038 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 22:23:29 +00:00
sjfink baa8690314 migrate more stuff to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4037 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 22:21:08 +00:00
sjfink 16e9c0fa67 migrate more stuff to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4036 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 22:21:01 +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
sjfink d7d6b048b6 refactoring and moving the launcher utilities to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4032 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 21:31:29 +00:00
sjfink 6416445fe4 refactor to move stuff into wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4031 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 21:13:34 +00:00
sjfink e8da3e3d8d move some functionality to wala.util
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4030 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-01-17 20:56:35 +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 1180d7e71b add ability to return exit value for spawned process
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4021 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-12-21 20:49:05 +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 53bea40ab6 give up on optimizing jar file I/O for now. fix existing code to not even temporarily store jar file content for now.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3999 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-22 22:41:29 +00:00
msridhar1 7917b30fc5 be more robust to corrupted nested jar files
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3993 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-05 17:57:06 +00:00
msridhar1 205b7d078a remove eager failure when invalid class file in a nested jar is encountered
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3989 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-04 20:30:49 +00:00
msridhar1 2a4d3869de temporary fix for issue with bad I/O patterns when reading large jar files. a work in progress
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3988 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-04 16:47:35 +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
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
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 f13e059144 make constructor protected, as it is the superclass
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3983 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-20 15:13:42 +00:00
dolby-oss 080453957f added int set type as type parameter to MutableIntSetFactory so that it can be conveniently used with specialized subtypes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3982 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-15 14:31:13 +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 56577432d8 copyright comment update
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3974 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:29:17 +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
yinnon_haviv a0fb3b089f bugfix: improve pointing to source code.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3958 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-30 21:32:45 +00:00
yinnon_haviv 9cae049830 Added viewer for CHA/CG/PA for Java/JavaScript.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3954 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-28 17:11:12 +00:00
yinnon_haviv 592a2de0cc Refactor: remove unused imports
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3947 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-28 08:10:36 +00:00
yinnon_haviv b2acc4502d Support for serializing/deserializing Atoms.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3945 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-28 08:06:17 +00:00
msridhar1 4740f7a16a bug fix: assume analysis scope files are UTF-8 encoded rather than using platform default
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3940 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-22 22:10:00 +00:00
dolby-oss 5cfbd1fbaf fixes for names in archives in various Web formats
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3915 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 14:00:39 +00:00
dolby-oss bf4c0dbb99 change to how default values for value numbers are recorded for SSA conversion by CAst
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3914 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 13:59:21 +00:00
dolby-oss 1f1567eee4 change to make debugger (on my system) see state in the constructor
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3913 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 13:55:43 +00:00
msridhar1 86ce1fca50 fix for tracker issue 3019831
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3899 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-01 15:56:43 +00:00
sjfink 9356db8497 patch from Florian Brander: avoid NPEs when call strings are null
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3862 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-08-10 14:07:02 +00:00
msridhar1 6b9f0317a3 add utility method for getting DefUse for some IR in the Everywhere context
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3860 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-08-09 22:37:32 +00:00
msridhar1 ce73ef7d2e add toString()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3859 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-08-09 22:37:07 +00:00
msridhar1 28ef96d4c3 fix comment
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3858 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-08-09 22:36:53 +00:00
dolby-oss d9bad4c9e6 add exception declaration to indicate removeNode is optional
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3855 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-07-19 14:09:10 +00:00
sjfink 3fcb6de3ba format a comment
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3851 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-06-21 18:14:39 +00:00
msridhar1 019601bb59 change to fix compilation with javac
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3848 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-27 14:06:03 +00:00
msridhar1 2d6f56893c trying to update build.xml
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3846 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-21 16:28:13 +00:00
dolby-oss 8deb9a2814 fix really silly error
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3845 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-20 15:53:42 +00:00
msridhar1 460477e074 fix bug in PDG contruction for a case involving infeasible bytecodes; add corresponding test
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3843 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-17 16:57:52 +00:00
msridhar1 fd15101eb9 add NO_EXCEPTIONS data dependence option
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3841 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-16 15:20:13 +00:00
msridhar1 133bd80a7e added some javadoc
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3835 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-12 22:40:42 +00:00
msridhar1 d6f7f6d21a fix javadoc
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3834 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-12 18:33:28 +00:00
msridhar1 447823c629 kill unused supportRefinement option
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3833 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-12 18:30:55 +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
msridhar1 c6096ddfd9 fix typo
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3831 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-11 21:08:06 +00:00
msridhar1 c8fba1cb0b fix some comments / javadoc
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3829 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-07 15:35:26 +00:00
msridhar1 9dfe21c864 bug fix: inconsistent heap models were being used
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3828 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-05-06 19:27:44 +00:00
msridhar1 f76602dbfb clean up interface for creating a DemandRefinementPointsTo class, and make the internal ThisFilteringHeapModel package visible
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3827 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-04-30 17:13:14 +00:00