Commit Graph

79 Commits

Author SHA1 Message Date
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
msridhar1 cafc761a7c bug fix
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4503 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:24:56 +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 bfb24934af another bug fix; getting closer...
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4466 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:15:38 +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 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 3445c0b090 renaming of exposed parameters
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4460 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:14:03 +00:00
msridhar1 1d4f5ff639 initial code to compute exposed names
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4459 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-02-17 20:13:52 +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 aa5cf116be Bug fix for lexical_broken.js
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4416 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:51:11 +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 eb508d52f1 polishing of fix for wrap2.js issue
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4375 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:36:37 +00:00
msridhar1 22fa1d4692 initial version of bug fix for wrap2.js; needs to be commented / polished
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4374 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2012-01-06 21:36:23 +00:00
dolby-oss b27fd8de26 performance work on lexical scoping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4192 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-06-30 15:45:58 +00: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 d66338b16d javadoc; convert Scope.type() to use an enum
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4159 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-27 21:04:31 +00:00
msridhar1 4bfa3124a2 javadoc, minor refactorings
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4158 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-27 17:06:06 +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 f46aef537a javadoc
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4148 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-22 23:01:11 +00:00
msridhar1 c768f136c4 format, remove unused import
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4147 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-22 23:00:52 +00:00
msridhar1 d838a6c42f javadoc, generics
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4145 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-22 22:59:44 +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
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 c4891ba35d fixes to defining types
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@4088 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2011-04-04 15:17:31 +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
yinnon_haviv 268e8268e0 Move repeating error msg under DEBUG flag
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3948 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-09-28 08:20:53 +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 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 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
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
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
dolby-oss 3e198f8244 merge of development on internal branch. Support for cross-building JNI code for Windows, and refactoring of abstract loader support.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3242 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-26 16:54:30 +00:00
dolby-oss 65bfb788b7 adapt to core changes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3228 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-19 15:59:01 +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
dolby-oss ff27c9122f further work on lexical scoping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3133 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-12-16 14:27:42 +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 f90c091819 integrate changes for X10 analysis and fix for inexplicable compile issue with Eclipse 3.4
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3081 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-11-06 17:57:20 +00:00
dolby-oss 42ffd051dc optimization of getAllExposedUses for lexical scoping
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3046 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-10-03 20:10:09 +00:00
sjfink ec363cc10a fix hashcode problems and misc. minor cleanups
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2733 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-31 15:47:32 +00:00
dolby-oss e509347a24 support for include-style constructs at the AST level
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2731 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-25 15:16:21 +00:00
sjfink a359ba825d refactoring: move some classes into appropriate packages
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2453 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-24 22:20:51 +00:00
sjfink 9e79661c60 just refactoring ... introduce 2 new packages in wala.util.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2447 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-24 22:05:51 +00:00
sjfink 0a5f2232f5 delete obsolete ValueDecorator interface
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2388 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-01-15 14:40:11 +00:00