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
59d602e9b7
added a recursion check
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4490 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:20:36 +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
5c0c7eb7f8
pref off generating separate call methods per site; better handled in a context selector, as this was causing non-termination
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4487 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:19:49 +00:00
msridhar1
bd71761645
Un-finalled flag WARN_ABOUT_IMPRECISE_CALLGRAPH to make it configurable
...
from TestUtil.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4486 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:19:40 +00:00
msridhar1
6d2f186f36
re-enable ScopeMappingContexts
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4482 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:19:03 +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
8988ff3b0f
more precise model of Function.prototype.apply(); read correct properties from arguments array
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4479 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:18:16 +00:00
msridhar1
197ec11f35
small optimization: avoid calling TypeName.toString() in some cases
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4478 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:18:07 +00:00
msridhar1
19bd95238a
Adding a context item containing the index.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4477 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:17:55 +00:00
msridhar1
16c798c790
bug fix: only generate one synthetic method representing Function.prototype.apply
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4476 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:17:44 +00:00
msridhar1
21e17b0928
some cleanup
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4475 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:17:30 +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
fe9dbe1128
Added optional one-level callstring sensitivity for
...
Function.prototype.apply
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4471 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:16:47 +00:00
msridhar1
dd2a04e1a7
Fixed a bug where the index of the argument to check for use as a
...
property name was ignored.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4470 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:16:36 +00:00
msridhar1
49bd12c0ec
no need for ScopeMappingContexts with new lexical scheme
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4469 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:16:26 +00:00
msridhar1
300377a428
disabled LexicalScopingResolverContexts with new scheme
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4468 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:16:15 +00:00
msridhar1
78ef6e3a03
further work
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4465 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:15:26 +00:00
msridhar1
c9ee502acc
another bug fix
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4464 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:15:02 +00:00
msridhar1
8982d35800
fixed one CG building bug with useLocalsForLexicalVars() disabled
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4463 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:14:51 +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
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
6e1d5783e6
Fixed search for closest enclosing block, which could run into an
...
infinite loop.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4446 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:33:58 +00:00
msridhar1
0c07531918
Make WARN_ABOUT_IMPRECISE_CALLGRAPH non-final so we can flip it at
...
runtime.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4445 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:33:45 +00:00
msridhar1
daf36902bd
Avoid plugging in the same AST node twice when creating code for a
...
method call.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4444 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:33:35 +00:00
msridhar1
12b68c9a11
Some more changes to the closure extractor to make it play better with
...
Rhino 1.7.3.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4441 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:32:59 +00:00
msridhar1
96263c8736
Adapted generation of fixup code for return and goto to Rhino 1.7.3.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4440 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:32:46 +00:00
msridhar1
39297b0c3d
More adjustments to Rhino 1.7.3 CAst.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4439 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:32:32 +00:00
msridhar1
174a30454c
Started to update the closure extractor to work with Rhino 1.7.3.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4438 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-08 15:32:15 +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
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
c40917c3da
remove unused imports
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4421 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 23:31:16 +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
4442683421
Better fix for the issue with null instance keys in the
...
ForInContextSelector: turn them into ConcreteTypeKeys for LUndefined.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4413 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:50:22 +00:00
msridhar1
b9ff3d0857
Removed bailout on null argument, which breaks jQuery tests.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4412 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:50:08 +00:00
msridhar1
ea76fd31ab
Extraction of correlated read/write pairs needs to be done _before_
...
property read expansion. Extended TranslatorToCAst to support this.
Various other changes to make it possible to plug in the correlated pair
extractor.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4411 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:49:48 +00:00
msridhar1
30dbcd1e0b
ForInContextSelector can now be parameterised on the argument index on
...
which to specialise.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4409 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:49:08 +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
da746ac8a4
add disabling of load target selector to options
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4407 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:48:28 +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
bbbc93d8c6
Introduced extra switch to turn off the LoadFileTargetSelector.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4404 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:47:37 +00:00
msridhar1
7d6fe1d943
make field private again
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4403 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:47:23 +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
207d40811f
add flag to disable handling of Function.prototype.call
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4401 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:46:50 +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
48fd56f3ee
use call string contexts for constructors rather than the enclosing CGNode. also, fix an imprecision with passing ScopeMappingContexts
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4396 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:45:35 +00:00
msridhar1
723cab3e42
don't add a bunch of irrelevant Java-specific context selectors
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4393 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:44:53 +00:00
msridhar1
ce72e0fb93
make __proto__ not enumerable
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4391 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:44:25 +00:00
msridhar1
5f6fc74836
Forgot to add equals/hashCode to ArgumentInstanceContext before.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4387 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:43:22 +00:00
msridhar1
4c4d83ed5b
Getting rid of two low-level hacks for now.
...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4385 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:43:00 +00:00