Commit Graph

134 Commits

Author SHA1 Message Date
Manu Sridharan 6465edbaee test fix 2013-01-09 14:30:56 -08:00
Manu Sridharan 29c73cea83 Merge branch 'lexical-access-info' 2013-01-09 14:27:14 -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 bf6b6bd685 renamed classes to make relationship to mod-ref analysis clearer 2013-01-04 09:35:04 -08:00
Manu Sridharan 5aa3a16587 add support for lexical writes 2013-01-03 16:09:48 -08:00
Manu Sridharan 26e7eb50ba Code to compute transitive lexical accesses of methods.
The TransitiveLexicalAccesses class computes the lexical variables
read by a CGNode and its transitive callees.  Also, a basic test case.
2013-01-03 15:58:07 -08:00
Manu Sridharan dd98150ed8 fix test to properly check reachability 2012-12-17 20:38:17 -08:00
Manu Sridharan 1bf2c64ba7 add an array test that doesn't quite work 2012-12-17 16:52:31 -08:00
Max Schaefer e130a5b963 Some refactoring of prologue.js and preamble.js to use more consistent
names.
2012-09-18 13:22:17 -04:00
Manu Sridharan 24eb803211 organize imports; no semantic change 2012-09-04 16:24:37 -07:00
Manu Sridharan 931e2b8b4b remove Mozilla page tests 2012-08-29 14:41:02 -07: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
dolby 0518b5242b more JS stuff 2012-08-22 12:15:46 -04: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
Max Schaefer a3d8a0c757 Renamed two test methods. 2012-07-09 14:24:36 -04:00
Max Schaefer c5e31617e1 Some more tests. 2012-07-09 14:22:34 -04:00
Max Schaefer d40729c444 Small improvement to treatment of generated names in extraction tests. 2012-07-05 16:31:58 -04:00
Max Schaefer 468f0a9864 Added a workaround for differences in generated names between actual and
expected output in some of the tests.
2012-07-05 09:56:53 -04:00
Max Schaefer fca3999e9a Fixed rewriting of non-constant switch cases. 2012-07-05 09:37:47 -04:00
Max Schaefer 5ba9b7b735 Merge branch 'master' of git@riverdale.watson.ibm.com:jsanalysis 2012-07-05 08:34:01 -04:00
Max Schaefer 9d1d198777 New test case for call graph construction. 2012-07-04 15:29:16 -04:00
Manu Sridharan f6e52c9b93 Merge remote-tracking branch 'riverdale/master' 2012-07-04 10:27:13 -07:00
Max Schaefer 7bdc127ce5 Workaround for invalid end positions in CAst. 2012-07-04 12:19:05 -04:00
dolby d0d1ff1a2b Merge branch 'master' of https://github.com/wala/WALA.git 2012-07-03 19:22:37 -04:00
Manu Sridharan 76ca05ccb8 comment out manual enabling of CG dumps; we really need a better solution here 2012-07-03 15:55:02 -07:00
Manu Sridharan ec2b83ff1b don't run the jquery test as part of the standard regression; we don't scale yet 2012-07-03 15:07:20 -07:00
dolby 4b3cba710d changes from upstream 2012-06-29 15:47:54 -04:00
dolby dfe06b8ff3 changes to Web source mapping to exploit rhino 1.7R3 source offsets 2012-05-08 13:17:01 -04: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 99564d6e06 strengthen checking of argument specialization test
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4533 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-23 18:15:05 +00:00
msridhar1 a840e068d6 When extracting correlated pairs, check that the extraction region does
not reference the "arguments" variable.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4506 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:25:39 +00:00
msridhar1 a3d0b45eef Added support for localising variables through which correlated reads
flow. This somewhat compensates for the lack of SSA form for closure
variables under the new lexical scheme.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4505 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:25:22 +00:00
msridhar1 efcbdd625c Merge remote-tracking branch 'riverdale/extractor-fix' into lexical-again
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4502 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:24:48 +00:00
msridhar1 5f2733bd0e fix some compile errors
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4501 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:24:32 +00:00
msridhar1 954a1f091b more work on precise lexical configuration
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4495 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:22:55 +00:00
msridhar1 c861bfed80 introduce CGBuilderType enum, related refactorings
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4493 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:22:14 +00:00
msridhar1 a3826f23a8 refactoring: rename some Util classes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4492 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:21:59 +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 677fc96aec add a test
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4485 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:19:32 +00:00
msridhar1 a1a62d4793 Fixed a longstanding bug in the handling of arguments: both v1 _and_ v2
should be ignored when setting up the arguments array (the former is the
invoked function, the latter is the receiver).

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4480 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:18:32 +00:00
msridhar1 fcf0aa824d in the Function.apply() context selector, only add one-level of call strings when an ApplyContext is also being used
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4474 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:17:22 +00:00
msridhar1 54d50d4eea Turning off handling of apply for this test.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4472 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:16:55 +00:00
msridhar1 2dda77a0fb another bug fix; looking good...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4467 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:15:57 +00:00
msridhar1 c9d914304d add a test
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4462 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:14:36 +00:00
msridhar1 9ad5c55d85 generate lexical access instructions for methods accessing their own exposed vars. still need to fix call graph construction
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4461 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:14:26 +00:00
msridhar1 c87d4731bb add a test case that causes a crash
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4458 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:13:39 +00:00
Max Schaefer aa00b04c00 Some more fixes to the closure extractor; now only a single test fails. 2012-02-09 08:21:10 -05:00
msridhar1 eb1f59407d Undoing accidental commit.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4453 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:35:56 +00:00
msridhar1 d7544c111f Minor change.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4452 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:35:45 +00:00