Commit Graph

491 Commits

Author SHA1 Message Date
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 8e94f4fb96 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@4427 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-27 20:23:57 +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
msridhar1 fbbd401c9a Added optional object sensitivity for functions returning 'this'.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4384 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:42:47 +00:00
msridhar1 ee11f7481a Some temporary hacks to make MooTools analyse.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4383 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:42:31 +00:00
msridhar1 0486cea6bb Warn about call graph imprecision if an unlikely use of
Function.prototype.call is detected.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4380 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:37:49 +00:00
msridhar1 c48935c0b9 Improved target selector for Function.prototype.call to handle cases
where it is invoked as a constructor. As this is almost certainly due to
call graph imprecision, we optionally emit a warning when this happens.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4372 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:35:52 +00:00
msridhar1 6e922aac6a Shouldn't use IMethods as keys in maps.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4371 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:35:38 +00:00
msridhar1 fc57c3b878 small optimizations; don't call toString() as much
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4370 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:35:24 +00:00
msridhar1 f874332a9d Bug fix: only use ToString conversion if we are sure the variable is
only ever used as a property name.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4369 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:35:08 +00:00
msridhar1 74502bafb8 Cleaner handling of for-in context selection: instead of matching on
function name, we now use a for-in context for every function that
uses its first argument as a property name. There is a flag to restore
the old behaviour.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4368 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:34:54 +00:00
msridhar1 3388b8dc7b Removing custom context selector for Function.prototype.call; it doesn't
seem worth having.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4367 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:34:40 +00:00
msridhar1 df0525d55c Extending for-in context selector to also provide contexts for functions
that perform for-in iteration on their first parameter.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4366 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:34:27 +00:00
msridhar1 7026301ed4 Fixed unsoundness in the context selector; unsurprisingly, this makes
the analysis explode on MooTools again...

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4363 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:33:48 +00:00
msridhar1 e62fdc5b1f Added custom context selector for uses of Function.prototype.call, which
adds object sensitivity on such uses.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4362 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:33:34 +00:00
msridhar1 46dc767549 Minor change.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4361 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:33:19 +00:00
msridhar1 f0bee15f9f Minor change.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4360 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:33:06 +00:00
msridhar1 87ea0760cf Additional check to ensure that the expected number of arguments is
provided.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4359 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:32:51 +00:00
msridhar1 899824081e always add one level of call-string sensitivity for constructors
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4356 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:32:12 +00:00
msridhar1 22f6ba3e0c extra diagnostics
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4354 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:31:44 +00:00
msridhar1 6e4db282b6 undo change
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4351 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:30:59 +00:00
msridhar1 48b42a18a0 tinkering with jquery
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4345 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:29:42 +00:00
msridhar1 2989bc2e6a add flag to disable handling of Function.apply()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4344 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:29:27 +00:00
msridhar1 fa1f572d60 add one level of call-string sensitivity for Function.apply()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4342 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:29:01 +00:00
msridhar1 8c2fd9cb10 kill some old code and rename a class
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4340 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:28:34 +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 efa0efa796 fix bad method overriding
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4334 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:26:41 +00:00
msridhar1 c250331e78 more work on Function.apply(), but regression tests aren't passing yet
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4333 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:26:23 +00:00
msridhar1 a30ea94aac support Function.apply() with no argsList array
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4332 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:26:01 +00:00
msridhar1 875347167b started some work
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4331 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:25:38 +00:00
msridhar1 f9d6e38eea Removed spurious "arguments" property on function objects.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4329 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:25:06 +00:00
msridhar1 3172ba6b0f Fixed data flow propagation code for the arguments array: arguments[0]
is not the receiver, it is the first real argument.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4328 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:24:53 +00:00
msridhar1 515c9b8f18 Fixed code for determining whether a callee should be analysed in a
for-in context: checking whether its name _contains_ HACK_METHOD_STR is
not a good idea, since this is true also for inner functions of the
forin_body functions.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4327 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:24:38 +00:00
msridhar1 eb73fac9e4 documentation of global object handling
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4326 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:24:25 +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 e468d042fa add option to generate separate synthetic method per call site of Function.call()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4319 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:22:09 +00:00
msridhar1 1ea96713c3 cache Function.call() synthetic methods and reuse
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4317 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:21:40 +00:00
msridhar1 b042d61a67 initial implementation of handling Function.call(). also, fix previous change that caused some tests to fail
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4316 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:21:26 +00:00
msridhar1 31108fa7e2 Avoid re-analysing the same file twice.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4314 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:20:41 +00:00
msridhar1 bf66d29491 fix bug in setting of __proto__ in function constructor
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4313 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:20:28 +00:00
msridhar1 22e79d7ef7 make JSCFABuilder abstract
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4310 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:19:49 +00:00
msridhar1 45d15c2bd6 Filtering instance keys passed to extracted loop bodies to emulate ToString conversion.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4307 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:19:14 +00:00
msridhar1 939f6b3f34 Organise imports.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4306 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:19:01 +00:00
msridhar1 4d9876d452 Fixed a bug where the property read expander was generating a DAG, and
another one which prevented CFG node targets from being properly copied.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4302 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:18:06 +00:00
msridhar1 c0a99989a4 Support for applying a preprocessor to the generated CAst tree before
translating it to IR.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4300 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:17:39 +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 05f0d27d45 move code related to validator.nu HTML parser to a separate project
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4296 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-05 19:58:35 +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
Juergen Graf 8494f98106 Merge branch 'wala' into master 2011-11-09 13:03:31 +01:00
msridhar1 e672a1ece8 clarify exception messsage
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4286 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-10-28 20:30:54 +00:00
Juergen Graf f5ac0c543f Merge branch 'wala' into master 2011-07-12 19:50:39 +00:00
dolby-oss 1f2ebb7943 fix for read expansion issue
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4215 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-06 19:52:51 +00:00
msridhar1 409a8f83b5 a little more debug info
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4206 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-02 15:34:21 +00:00
dolby-oss bcd742f06c experiments with context sensitivity and fixes to use base contexts
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4203 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-02 15:14:57 +00:00
msridhar1 2b443852fc pull out hacked for-in context selector. add some debugging output
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4200 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-07-01 16:48:18 +00:00
dolby-oss 12b5f281c6 minor cleanup
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4190 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-06-30 15:44:37 +00:00
msridhar1 201b28eea0 bug fixes for handling of prototype and __proto__
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4188 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-06-22 21:23:49 +00:00
Juergen Graf f8d6f5b917 Merge branch 'wala' into master 2011-05-27 12:25:53 +02:00
dolby-oss 3e573a992d upgrades to lexical soping implements to address some performance issues
fixes to HTML model to capture use of local vars as window state in scripts


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4176 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-05-23 16:27:07 +00:00
msridhar1 ac7294dac2 bug fix: incorrect check for number of constructor parameters
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4171 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-05-05 03:51:54 +00:00
msridhar1 1f97edecc7 formatting, minor refactoring
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4168 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-05-04 21:06:35 +00:00
msridhar1 cbd5613a35 javadoc, formatting, move a DEBUG flag
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4163 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-05-02 22:11:27 +00: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 3fffba2c87 javadoc and formatting
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4149 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-26 18:44:49 +00:00
msridhar1 a1b36e3488 comments
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4146 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-22 23:00:31 +00:00
msridhar1 06b529e146 javadoc, formatting, more generic types
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4144 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-22 22:59:13 +00:00
msridhar1 c3e6ea9526 formatting
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4143 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-22 22:57:55 +00:00
msridhar1 05a516c1e2 javadoc and formatting
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4130 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-20 23:08:47 +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 67d26e74c5 allow IR translator to give warnings and errors via the loader
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4125 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-14 01:16:36 +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
dolby-oss cf0f17f4cd adapt to better handling of function scoping in JS
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4121 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-13 16:21:08 +00:00
dolby-oss adca756422 preserve exception control flow when expanding reads
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4120 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-13 16:20:31 +00:00
dolby-oss ab0bf42f4a fixes to make forms work better for analysis, and to deal with better handling of function scoping in JS
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4119 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-13 16:19:55 +00:00
Juergen Graf ee3c56b9e9 instruction index in SSAInstruction for javascript 2011-04-13 12:56:36 +02:00
dolby-oss c82117149d new names for handler functions that include tag name and attribute name
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4112 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-08 19:23:10 +00:00
dolby-oss 565f9ca663 hack for CDATA
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4111 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-07 16:58:58 +00:00
dolby-oss bc294d76a6 make node types into strings
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4108 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-07 15:22:32 +00:00
dolby-oss 032f82f713 typing cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4105 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-05 16:41:43 +00:00
dolby-oss b7f3f8b7a8 make getStream accessible
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4104 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-05 10:46:53 +00:00
dolby-oss 6b47bc0bd1 fix import warning
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4100 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 17:31:19 +00:00
dolby-oss fbc893e2b3 added neglected copyright headers
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4099 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 17:27:16 +00:00
dolby-oss 684524e4bc added recording of script tag locations from which script code is included into the analysis of a Web page
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4097 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 17:16:18 +00:00
dolby-oss b0849e3ab6 updates to processing of Web pages:
1) adopted the code from Rational for HTML handling
    i) extended it to integrate better source mapping into IR
    ii) integrated fixes from the old html processing to collect more info on forms
    iii) added some copyright comments
  2) updated version of jericho
  3) added support for nu.validator for html5
  4) added script to fetch html parser jars, and removed binary jar
  

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4091 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 15:25:53 +00:00
dolby-oss cdd42a68b6 updates to processing of Web pages:
1) adopted the code from Rational for HTML handling
    i) extended it to integrate better source mapping into IR
    ii) integrated fixes from the old html processing to collect more info on forms
    iii) added some copyright comments
  2) updated version of jericho
  3) added support for nu.validator for html5
  4) added script to fetch html parser jars, and removed binary jar
  

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4090 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 15:23:58 +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
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
dolby-oss 37acebc7be fixes for url analysis
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4001 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-23 15:32:18 +00:00
dolby-oss 01cf547410 check for null values of attributes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3997 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-22 17:44:53 +00:00
dolby-oss 9baccf9a10 loosen types
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3996 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-09 19:01:07 +00:00
dolby-oss 6f0e52f538 fix for broken input fields
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3995 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-05 20:27:29 +00:00
dolby-oss 23b669a691 more work and tests on Web page model
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3991 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-05 00:36:44 +00:00
dolby-oss c7558b3646 fixes for Rational
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3985 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-11-02 19:11:58 +00:00
dolby-oss 6bdea6a627 minor hacks for ugly js code
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3978 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:38:04 +00:00
dolby-oss 00a332e632 hack to track URLs
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3971 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:26:48 +00:00
dolby-oss 658598e82b fix to handle redefinition of 'undefined' (yuck)
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3970 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:25:52 +00:00
dolby-oss 0070a69af0 handle bogus ctor calls, likely due to analysis imprecision
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3969 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-11 14:24:40 +00:00
yinnon_haviv fb6f25ce37 Put entrypoint code also under main method - required for having correct "this" pointer (window).
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3963 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-03 11:52:22 +00:00
yinnon_haviv 38f8a44044 Fix prototype contamination bug (described in added test).
When someone writes: 
MyFunction.prototype.myMethod = ...
we want "myMethod" to be accessible only for objects of type "MyFunction".

- Change how generated ctors look like - now they have a private prototype object into which methods can be added
- Change the PropertyReadExpander to have a different handling when reading the "prototype" field, avoid performing a loop on the prototype chain, so that the points to set of fetched field will be accurate (and allow us to set only the fields of it)


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3959 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-10-02 19:30:03 +00:00
yinnon_haviv 02842ff765 Adding Generators (Extracting js source from html) that support line numbering. Currently used only from within the JsViewerDriver.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3957 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-29 15:29:55 +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 1d4d158de3 Replace manual creating of URL (using, e.g., "file:" + f.getAbsolutePath() ) with progrematic one.
(File.toURI().toURL()). Good for cross platform (Mac vs. Windows)

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3953 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-28 16:22:08 +00:00
dolby-oss d6dbd72ee6 fix for assertion failure in loading functions with the new way of loading additional files
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3943 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-28 02:00:39 +00:00
yinnon_haviv 2fea4f6e4f - Fix unit tests both for Mac and Windows environment.
- Replace Html Parser with one that is based on Jericho (require running ./fetch_libraries.sh on cast.js project. 

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3942 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-27 15:15:03 +00:00
dolby-oss e4b9d03be5 bug fixes for unicode names and to prevent analysis from modifying the symbol table
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3936 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-14 20:29:05 +00:00
dolby-oss 0ddb040987 bug fix for context-sensitive analysis of javascript functions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3935 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-14 20:28:04 +00:00
dolby-oss 0eaaf73232 handle cases where imprecision causes Object to flow places where it would not be legal
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3934 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-14 20:27:30 +00:00
dolby-oss dec3802c1c fixes for symbols that are used by the call graph builders
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3928 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-10 22:33:47 +00:00
dolby-oss 9855a8b4ff remove debugging prints
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3927 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-10 22:32:54 +00:00
dolby-oss 1faed23dba bug fixes to handling script text
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3925 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 18:48:31 +00:00
dolby-oss d3a3c41cbd minor bug fixes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3922 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 14:07:07 +00:00
dolby-oss 7fed5f963e make allocation site sensitivity work
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3921 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 14:06:28 +00:00
dolby-oss 8a38138bf2 kill debugging print
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3920 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-09 14:05:29 +00:00
dolby-oss b1758cbd72 modularize script writing slightly
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3854 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-07-19 14:08: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
dolby-oss 2e724aac3e fixes for JavaScript motivated by Web examples
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3823 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-04-28 19:38:28 +00:00
dolby-oss e877067710 Ishizaki-san's patch for hasMonitorOp
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3733 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-07-17 13:58:55 +00:00
dolby-oss a3dc6411ae separate Rhino-specific portions of javascript analysis
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3731 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-07-16 18:09:54 +00:00
sjfink a0efbee8ff Major refactoring to introduce com.ibm.wala.ide. Many related changes and patches from Marcelo Paternostro.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3693 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-22 15:06:12 +00:00
sjfink 06d6ff8c8f minor cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3651 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-12 14:10:12 +00:00
dolby-oss 077467b538 adapt to wala changes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3627 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-03 18:26:29 +00:00
dolby-oss e85f813477 work on generalizing type inference
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3625 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-03 18:24:46 +00:00
sjfink 372e01c1ca fix build problems
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3623 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-06-03 16:58:55 +00:00
pistoia a20aabfd2e Overrides cloneReference() method.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3615 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-28 03:32:29 +00:00
dolby-oss de9c7a317b print parse errors
adapt to wala changes for pointers


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3605 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-20 18:56:23 +00:00
dolby-oss 01aa70a245 language fixes for void type
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3587 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-07 16:43:57 +00:00
msridhar1 d3cd3d894c remove unnecessary @Override
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3580 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-07 14:09:49 +00:00
sjfink db1bc2fadc fix broken CAst builds.
deprecate Internal and NonNull annotations

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3577 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-07 13:51:24 +00:00
pistoia 913fd56249 augmented preamble.js and Generator.java to have a better handle of the DOM
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3569 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-05 18:29:07 +00:00
dolby-oss c3769d5717 performance and other fixes driven by models of Web pages for JavaScript
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3562 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-04 14:11:31 +00:00
sjfink 17c2aa7588 remove unnecessary ClassHierarchyExceptions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3558 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-05-01 13:04:33 +00:00
sjfink 9939142eae switch from Assertions._assert to Java assertions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3555 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-30 13:16:52 +00:00
sjfink 829145e97b Nuke ClassHierarchyException from IClass.getSuperclass()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3539 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-28 19:52:34 +00:00
pistoia 01272cd6e9 Minor change allows the HTML call graph builder to analyze charsets different from traditional ones. Before, it would throw an IOExcpeption.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3537 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-27 21:34:24 +00:00
sjfink addfb7ddc2 organize imports
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3483 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-20 12:54:33 +00:00
dolby-oss f6f7b92bfe clean ups, and work on error reporting in the CAst front end
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3461 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-15 12:52:40 +00:00
sjfink 77101da20f misc. cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3434 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-10 19:48:32 +00:00
dolby-oss e80dc6ef8c refactor handling of constants in Shrike to abstract away from Java bytecode
introduce factories to create SSAInstruction objects


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3433 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-10 18:33:07 +00:00
sjfink 957cb2b8ca deprecate Trace
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3432 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-09 20:31:14 +00:00
dolby-oss b2bae33bab generalize parsing of Descriptors to also handle languages other than Java
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3366 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-03-26 15:11:45 +00:00
sjfink ed13ddbb17 bug fix 2666538: make ClassLoaderReference immutable, and related API fixes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3302 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-03-13 14:20:35 +00:00
sjfink aeda43e97e minor cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3265 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-03-09 17:59:09 +00:00
sjfink ec2c48b42a organize imports
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3263 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-03-09 17:49:23 +00:00
dolby-oss aa21ef9f58 adapt to core changes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3231 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-19 15:59:55 +00:00
msridhar1 1b17786512 when reflection handling is disabled in the AnalysisOptions, disable stuff like handling of string constant arguments to reflective methods, etc.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3209 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-03 20:38:47 +00:00
dolby-oss 159e25f52e fixes for Rhino issue---ignoring multiple variables in a single var declaration
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3201 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-02 20:46:51 +00:00
dolby-oss 9979d0899c more fixes to lexical scoping for JavaScript
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3196 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-01-30 16:33:22 +00:00
dolby-oss f8d02b4541 fixes for JavaScript for Anders
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3191 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-01-27 17:40:11 +00:00
dolby-oss 37e0676e93 fixes to unary operators for JavaScript
(i.e. unary +x is not the same as x+0, same for unary -x)


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3190 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-01-22 14:38:34 +00:00
dolby-oss 8d3c76715c misc. fixes motivated by JavaScript
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3175 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-01-19 15:12:39 +00:00
sjfink b1f300156e patch from yinnon to make analysis scopes obey list order
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3144 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-12-17 19:52:27 +00:00
dolby-oss 637f06b2c0 further work on lexical scoping
more bug fixes for Anders


git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3136 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-12-16 14:54:09 +00:00
msridhar1 5fd0909a7d changed execution environment to J2SE1.5. Fixed some warnings.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3113 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-12-02 17:01:50 +00:00
dolby-oss f04cc5aa94 enhancements to handling of lexical scoping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3111 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-12-02 14:09:25 +00:00
dolby-oss 309a9b6d72 enhancements to handling of lexical scoping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3109 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-12-02 14:08:12 +00:00
dolby-oss 7b4e03d9ab adapt to removal of walkNodes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3083 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-11-06 18:00:11 +00:00
dolby-oss 9200772866 bug fixes from Simon Jenson for bitwise operations
bug fixes to handling of for(.. in ..) {...} loops
 

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3045 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-10-03 20:08:26 +00:00
dolby-oss 9160a2f565 fixes to extraction of scripts from HTML
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3044 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-10-03 20:07:32 +00:00
dolby-oss dec4be0425 adapt to different notions of exception types for different languages
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2932 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-06-30 14:09:43 +00:00
dolby-oss 3df05382f0 bug fix for Anders and Simon regarding use of program counters in synthetic constructor functions
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2845 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-05-23 16:55:06 +00:00
sjfink f0a64f7efd revamp deterministic hash code support for a few key classes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2803 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-05-12 14:22:17 +00:00
sjfink 03c1a8cc60 fix compile problems from wala.core changes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2679 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-05 13:41:52 +00:00
sjfink 69c1bfa991 Simplify MethodTargetSelector and ContextSelector interfaces; delete optimizations based on allSitesDispatchIdentically and mayReturnSyntheticMethod.
Also some Cast bug fixes.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2655 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-03 21:32:36 +00:00
sjfink 8814ece4e2 delete PointerFlowGraph
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2610 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-02-24 00:05:19 +00:00
sjfink 8bb28da489 delete obsolete and broken OneCFABuilder
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2492 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-30 15:43:32 +00:00
sjfink 787c047d6e Delete CallGraphBuilderFactory. Related cleanups.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2457 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-24 22:38:50 +00:00
sjfink 849828e9fd just refactoring ... introduce 2 new packages in wala.util.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2448 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-24 22:06:02 +00:00
sjfink 1a72f854b3 delete obsolete 'preserveNames' SSAOption
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2403 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-16 21:19:14 +00:00
dolby-oss 6173bd0fa7 fixes for script entry point call sites
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2399 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-16 16:33:10 +00:00
sjfink 1cd38c1dc5 delete obsolete ValueDecorator interface
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2389 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-15 14:40:23 +00:00
sjfink e2dd8518b8 nuke support for "dispatch bound" call graph construction heuristic
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2350 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-10 22:05:37 +00:00
sjfink 2789df69e7 delete redundant method SSAAbstractInvokeInstruction.getSite()
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2290 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-04 21:18:25 +00:00
sjfink 7611f618e7 fix some generics
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2193 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-14 22:09:32 +00:00
sjfink 742c46a61d clean up Language and AnalysisScope interface
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2153 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-11 16:34:02 +00:00
sjfink b804160ef7 organize imports
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2145 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-10 05:36:36 +00:00
sjfink fd81fd7bcf fix compile bugs due to changes in wala.core
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2138 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-10 05:26:56 +00:00
dolby-oss 517ffd91a6 adapt to abstract invoke changes; move some util functionality to CAst core
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2134 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-10 04:32:54 +00:00
sjfink 3ea8de49e4 bug fixes. Add Javascript language to analysis scope.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2121 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-06 19:56:00 +00:00
rmfuhrer c5270a5f11 Now uses the base LanguageImpl implementation, which has support for new API that represents Languages in a hierarchy.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2116 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-06 14:57:33 +00:00
rmfuhrer fc1cf61c1b buildAnalysisScope() now adds the Language object for JavaScript to the scope's Language set (since the AnalysisScope now holds that information).
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2109 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-06 14:29:54 +00:00
sjfink e8543242d0 more generics
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2095 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-04 21:40:38 +00:00
sjfink 667b1c42ca organize imports
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2048 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-16 20:57:58 +00:00
dolby-oss 595d68d8d5 refactoring to move some reusable code to generic CAst projects
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2019 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-16 01:54:39 +00:00
dolby-oss f10ec15eb8 support for 1-CFA analysis
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1985 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-06 04:14:03 +00:00
sjfink 64c230a803 clean up TypeInference API
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1906 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-10-19 14:39:06 +00:00
sjfink 43e0a28d9e hide Pair constructor; misc. generics-related cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1705 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-08-31 23:20:12 +00:00
sjfink ac54a54c1d adapt to new generics in wala core
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1699 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-08-31 21:50:13 +00:00
yahave 2c8dd6d027 fixed bounds of iteration over symbol table using getMaxValueNumber. Loops should be iterating all the way to the MaxValueNumber returned (i.e., <=).
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1655 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-08-22 15:33:55 +00:00
dolby-oss 2d952cb4f0 merge code from loop unroller into standard CAstRewriter
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1561 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-08-01 15:38:17 +00:00
sjfink 7f62dc3c04 decouple IR caching from AnalysisOptions with a new AnalysisCache object
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1519 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-20 15:20:23 +00:00
sjfink e6bb457996 remove unused import
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1478 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-15 19:21:06 +00:00
rmfuhrer a915003bba Added new symbol class InternalCAstSymbol to make intent more
clear than using CAstSymbolImpl with extra boolean arg.

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1472 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-13 22:46:19 +00:00
rmfuhrer 6602980f64 Made doArrayRead() and doArrayWrite() public, per API change.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1455 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-12 22:50:46 +00:00
dolby-oss d7dc11aa87 generalize hackish notion of 'internal' names
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1450 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-12 18:15:56 +00:00
sjfink 433b943759 use Hash factories everywhere
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1439 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-11 21:08:21 +00:00
sjfink 1f94c82716 suppress a compiler warning
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1424 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-11 18:43:55 +00:00
sjfink 99a97fb477 massive overhaul of Warnings management
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1389 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-06 22:09:08 +00:00
sjfink be145b3838 miscellaneous housekeeping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1366 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-06 03:07:29 +00:00
sjfink 2445a55ad8 delete CallGraph.getInterpreter() and CFGProvider
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1346 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-05 03:04:57 +00:00
dolby-oss db20b2bf15 improve precision of model for creation of nodes in DOM
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1332 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-07-02 21:11:14 +00:00
dolby-oss 3f8232a725 improved mechanism for handling 'arguments' array; add model of 'replace' for strings; add new isNullType for Language object
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1324 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-28 14:32:15 +00:00
dolby-oss 769db079ab bug fixes and api changes for new assertion checking during ir generation
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1314 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-25 20:10:11 +00:00
dolby-oss 66b19b8666 support for cross-language call graphs
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1216 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-06-01 03:32:56 +00:00
sjfink 553ee0faea change some Iterators in API to Collections
remove some unnecessary WarningSet parameters

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1207 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-31 02:38:28 +00:00
sjfink afc1dc0a59 misc. cleanups and refactoring
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1167 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-23 13:42:58 +00:00
sjfink 5a8c0fa6d1 delete Entrypoints interface.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1125 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-15 17:44:43 +00:00
sjfink 7db5909f07 make SSAInstruction.equals() consistently use ==
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1049 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-05-03 17:26:38 +00:00
sjfink 9a6cb77c7a introduce some generics
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@997 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-24 14:11:04 +00:00
sjfink 8f42bd40fa minor cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@993 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-24 13:50:32 +00:00
dolby-oss 07baba9290 Translator now generates property read prototype looping as a proper CAst loop rather than adding the loop in the IR. Use new AstIsDefinedInstruction to test for defined'ness. Better separation of primitive values versus objects that corresponds to primitives.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@987 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-19 13:53:31 +00:00
sjfink f5f26ad8bc just format
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@944 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-12 14:54:57 +00:00
dolby-oss c8fb2a22af use new boolean-typed constants. adapt to new symbol declaration api
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@923 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-04 13:05:48 +00:00
sjfink 978bddae43 minor cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@848 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-03-12 16:09:39 +00:00
dolby-oss 541ee23cdf fix to generation of constructor function bodies
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@842 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-03-12 02:10:10 +00:00
dolby-oss 4668eb57d2 further analysis engine surgery, motivated by string analysis example
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@707 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-12 18:30:10 +00:00
sjfink f1ac319ca0 squash remaining Eclipse warnings
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@702 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-09 15:34:25 +00:00
sjfink 86bcc926ee miscellaneous minor cleanups. eclipse build stuff. import statements.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@677 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-08 19:07:30 +00:00
dolby-oss ceb1f9ef34 allow extractScriptFromHTML to take a String as well as a URL
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@659 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-07 18:54:07 +00:00
dolby-oss d8f21f8ee5 Initial contribution of core script analysis code
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@622 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-02 17:25:09 +00:00