dolby-oss
553ab68efa
jquery example
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4545 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-03-08 17:35:32 +00: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
msridhar1
6449da85df
Some final fixes to the for-in body extractor; it now seems to work as
...
before.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4451 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:35:32 +00:00
msridhar1
3b5a939033
New test for an NPE during SSA conversion.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4450 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:35:16 +00:00
msridhar1
c47b6a77b4
Need to pass on the preprocessor when constructing the call graph
...
builder.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4449 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:35:06 +00:00
msridhar1
96f0d763d2
Minor change.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4443 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:33:21 +00:00
msridhar1
55adb1ac2e
Minor change.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4442 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:33:10 +00:00
dolby-oss
79946e98d6
purported fixes for Max's latest bugs (with some tests)
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4433 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-07 13:50:08 +00:00
dolby-oss
3113f14e23
handling for delete exprs, and a test
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4432 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-06 13:54:10 +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
8b547b4812
Split up ForInLoopRewriter in preparation for merging changes back into
...
open-source WALA. The extraction code is now in com.ibm.wala.cast.js,
with some more general stuff moved to com.ibm.wala.cast and
com.ibm.wala.util. The tests are in com.ibm.wala.cast.js.test and
com.ibm.wala.cast.js.rhino.test. ForInLoopRewriter itself only contains
the framework specific tests and the copies of the frameworks
themselves.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4418 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:52:26 +00:00
msridhar1
a2c146b2d8
New failing test case dead_phi
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4417 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:51:26 +00:00
msridhar1
c8c12436a7
Added test exposing a weird IR generation bug.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4415 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:50:52 +00:00
msridhar1
c18cc405f7
fix disabling of call / apply for ajaxslt test
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4408 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:48:53 +00:00
msridhar1
1f5c0996e5
re-enable ajaxslt test with call / apply handling disabled
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4406 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:48:14 +00:00
msridhar1
ea7be296c8
create JSAnalysisOptions, and use to add proper option to disable handling of call / apply
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4405 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:48:01 +00:00
msridhar1
a12194cc92
fix handling of Function.prototype.apply. Disable testAjaxslt, which blows up with the fix enabled
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4402 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:47:09 +00:00
msridhar1
b3f6bfb18c
better formatting
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4394 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:45:08 +00:00
msridhar1
082607327d
test case for bad recursion check bug
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4389 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:43:58 +00:00
msridhar1
13202e726e
Added test case for handling of arguments array.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4388 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:43:37 +00:00
msridhar1
e149af8a13
Some more tests.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4381 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:41:57 +00:00
msridhar1
ed37d9ee5d
another failing test case for scoping and closures
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4376 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:36:59 +00:00
msridhar1
ca1792a6b8
add unit test for recursive lexical scopes
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4373 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:36:10 +00:00
msridhar1
2dc375340a
Simplified test cases.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4365 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:34:14 +00:00
msridhar1
98f89876b1
Adding two simple regression tests.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4364 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:34:04 +00:00
msridhar1
9a3b4f3d8a
add missing assertion check
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4341 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:28:46 +00:00
msridhar1
3057d11607
stop dumping call graph in the MediaWiki test to speed things up; add a flag to Util to suppress call graph output in other cases
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4337 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:27:42 +00:00
msridhar1
610c7e252e
add a test for Function.apply() with the arguments array
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4336 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:27:21 +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