Commit Graph

75 Commits

Author SHA1 Message Date
David Anderson
7427ea1c19 Backed out changeset 752bab2cb85b. 2010-05-23 20:27:13 -07:00
David Anderson
51f21f92ba Statically bind global variable references where possible (bug 561923, r=brendan). 2010-05-23 17:15:16 -07:00
Chris Leary
e63f347a0a Bug 564076: Small parser cleanup changes. (r=mrbkap) 2010-05-11 21:33:29 -07:00
Wesley W. Garland
d7f9e41759 Bug 560504 - Tweak friend class declaration in jsparse.h to work around compiler bug in Mac OS X Leopard's default compiler. r=jorendorff.
--HG--
extra : rebase_source : 164c7d281ec50463f36878e5fe29b30e2ac9e896
2010-04-21 10:54:25 -05:00
Dave Herman
ed6c552bb7 Bug 558437 - rename JSCompiler to js::Parser (r=brendan). 2010-04-10 21:15:35 -07:00
Jeff Walden
ad6a89209e Bug 517580 - Unconditionally build with support for getters and setters, remove support for the deprecated { x getter: function() {}} and x getter= function() {} getter syntaxes (mutatis mutandis for setter) now that ES5 provides Object.getOwnPropertyDescriptor and Object.defineProperty and { get x() { } } syntax, and provide __{define,lookup}{G,S}etter__ only if a preprocessor variable is defined (unconditionally provided for the moment). r=luke 2009-10-06 12:35:33 -07:00
Jason Orendorff
08bfa47c56 Bug 553671 part 4 - RAII for JS_{LOCK,UNLOCK}_GC and JS_{KEEP,UNKEEP}_ATOMS. r=luke.
--HG--
extra : rebase_source : dfdfcdd3a602e12de1836068e2c9f16fce46d7b2
2010-04-08 07:54:18 -05:00
Luke Wagner
6880c3a6fa Remove JSTreeContext/TokenStream warnings (no bug, r=me) 2010-04-01 12:41:01 -07:00
Jeff Walden
bfbc9141af Readd jsparse.cpp and jsparse.h changes for bug 548702. 2010-03-29 12:03:43 -07:00
Jeff Walden
0973dfd6ab Merge. 2010-03-26 21:53:40 -07:00
Jeff Walden
95422c65a3 Backed out changeset e7065853ef79; I'll be repushing this incrementally, attempting to find the precise place where things go bad, in the near future. Happy days are here again! :-\ 2010-03-26 18:01:54 -07:00
Jason Orendorff
d5f9ef6c2a Bug 500431 part 3 - Rename JSPropertyCache to js::PropertyCache and other renamings. r=brendan. 2010-03-24 21:20:44 -05:00
Jim Blandy
e82e0c1ee6 Bug 554102: Cleanup: switch from global TokenStream functions to methods. a=cdleary, r=jimb 2010-03-23 17:30:36 -07:00
Chris Leary
8e0decc494 Bug 553423 - JS scanner namespacing cleanup (r=lw) 2010-03-21 16:07:48 -07:00
Luke Wagner
1e33f57b39 Backed out changeset 6403442ffa1d (failure on windows, winnt.h defines TokenType!) 2010-03-18 22:26:47 -07:00
Chris Leary
2400e09e63 Bug 553423 - JS scanner namespacing cleanup (r=lw) 2010-03-18 22:15:51 -07:00
Luke Wagner
116a193009 Bug 552248 - fix crash when JS_EvaluateInStackFrame is called for frame in saved callstack (r=Waldo) 2010-03-15 19:24:08 -07:00
Andreas Gal
e7d0ea0449 remove JSTreeContext* parameter from JSCompiler parse methods (landing for dherman, bug 551021, r=jimb). 2010-03-15 14:58:01 -07:00
Dave Herman
eff925b1f0 Make the parsing methods members of JSCompiler for bug 518055. r=jimb 2010-03-11 17:28:01 -05:00
Brendan Eich
20a8cdf89b lightweight JSParseNode subclasses (bug 550350) 2010-03-11 11:29:21 -08:00
Luke Wagner
a1a73dd94d Bug 551276 - a more type-safe way to zero memory (r=Waldo)
--HG--
extra : rebase_source : fc5564c34cde6490a1d3b48a16a451f7e50c052a
2010-03-10 15:34:12 -08:00
Jeff Walden
106fbd8085 Bug 548702 - Temporary value-rooting scheme should be C++- and RAII-based, not macro-based. r=igor
--HG--
extra : rebase_source : c7bb34662dbd70df49d40880227139537c60356e
2010-01-11 11:52:21 -06:00
Jason Orendorff
2809d3e792 Bug 547067 - Don't overload test() in JSDefinition. r=brendan. 2010-02-19 12:14:36 -06:00
Brendan Eich
c9fed979f6 Bug 542002 - Optimize to flat closures even if some upvars can't be copied (r=jorendorff). 2010-02-10 15:17:52 -08:00
Brendan Eich
1699be3a87 Bug 541455 - Do not drop "mumble"; would-be directives in the parser, let them be completion values (or useless expressions for the emitter to cull) (r=jimb). 2010-01-22 12:17:13 -08:00
Brendan Eich
983aa690e9 Analyze module pattern and private-statics pattern in order to despecialize from methods to slots/sprops (536564, r=jorendorff). 2010-01-14 09:33:14 -08:00
Jim Blandy
34a27f0c88 Bug 514585: Recognize "use strict" directives. r=igor 2009-11-18 13:33:53 -08:00
Jim Blandy
f06be32d20 Bug 515233: Widen JSTreeContext::flags to 32 bits. r=igor
All the bits in this uint16 field are currently in use.  Adding bits
for projects like strict mode entails relocating existing flags, which
is additional work.  Furthermore, it seems that this has already
inspired people to put flags in places they don't belong:
TSF_DESTRUCTURING is a JSTokenStream flag, but is only used by the
parser.

This patch widens the field to 32 bits, and adjusts JSFunctionBox and
a few other places to match.

We should really replace these all with bitfields.
2009-10-08 10:29:03 -07:00
Jim Blandy
f4a407f114 Bug 515233: Make the static level its own parameter to JSCompiler::compileScript. r=igor
Pre-patch, the initial static level at which a script should be
compiled to run is passed in the upper sixteen bits of the tcflags
parameter to JSCompiler::compileScript; because JSTreeContext::tcflags
is a uint16, while the tcflags parameter is a uint32, we know the
parameter's upper bits are free.

However, we would like to enlarge JSTreeContext::tcflags to 32 bits,
as we already have a handful of new flags that belong there.  This
patch moves the static level to its own parameter, which has a default
argument.
2009-10-08 10:29:03 -07:00
Jim Blandy
f98db45fa3 Bug 510117: Correct pseudocode describing use/def processing. r=brendan 2009-09-10 18:02:08 -07:00
Luke Wagner
3cf8a59c01 Bug 503952 - Use JSTempVector in scanner/parser; remove JSStringBuffer (r=brendan) 2009-08-14 16:10:59 -07:00
Jason Orendorff
335eeb15af Bug 461269 - Remove TOK_RP nodes from the parse tree. r=brendan. 2009-08-10 14:00:46 -05:00
Brendan Eich
4632276b25 Bug 499790 - common sub-expression elim for repeated (PND_ASSIGNED | PND_FUNARG), r=mrbkap. 2009-07-17 11:36:45 -07:00
Jason Orendorff
52fe5a97ba Bug 497618 - Change JSString macros to methods. r=Waldo. 2009-06-10 20:29:44 -05:00
Jason Orendorff
70dbad9c94 Bug 493232 - Wrong variable value accessed in closure. r=brendan. 2009-05-27 15:46:03 -05:00
Brendan Eich
d552a194d4 Bug 493466 - TM: youtube.com customization broken (r=mrbkap). 2009-05-18 18:02:51 -07:00
Jason Orendorff
cd986613f8 Bug 492714 - "Assertion failure: cg->staticLevel >= level, at ../jsemit.cpp" with genexp. r=brendan 2009-05-13 19:02:33 -05:00
Brendan Eich
9eb1ab4a95 Bug 471703 - Don't optimize group assignment given holey RHS (r=igor). 2009-05-07 21:50:32 -07:00
Brendan Eich
e29805bd5a Bug 487561 - More cleanup from bug 452498 and bug 487271 patches (r=mrbkap/igor, and this fixes bug 487570). 2009-04-09 15:05:12 -07:00
Brendan Eich
0b6ed95284 Bug 487538 - bug 487271 left three tests broken in its wake (r=mrbkap). 2009-04-08 18:27:44 -07:00
Brendan Eich
962b187fe5 upvar2, aka the big one take 2 (452598, r=mrbkap). 2009-04-05 21:17:22 -07:00
Andreas Gal
706120c0fb Backed out changeset 972c44aa9d1f (bug 452598). 2009-04-04 10:14:52 -07:00
Brendan Eich
5f4d9ff474 upvar2, aka the big one (452598, r=mrbkap). 2009-04-04 10:05:49 +01:00
Igor Bukanov
a572accd66 bug 419662 - nested function definitions must come after destructuring argument initializer. r=mrbkap 2009-04-03 10:02:27 +02:00
Igor Bukanov
09ffabb7a1 bug 485164 - fixing sharp semantic regressions. r=mrbkap 2009-04-03 09:53:02 +02:00
Brendan Eich
3fcd3cab28 Bug 454184 - Implement eval caching (r=mrbkap). 2009-01-27 19:56:55 -08:00
Brendan Eich
0d6dd5842d Bug 443074 - Incorrect decompilation (missing parens) with genexp in for-loop-condition (r=jorendorff). 2008-10-14 16:13:56 -07:00
Igor Bukanov
23c5063560 bug 446386 - eliminating compiler pseudo-frames. r=brendan 2008-09-08 11:47:12 +02:00
Jim Blandy
90bf6a2d1e Bug 97954: Give jsconfig.h a better name, and make room for the new js-config.h. r=bsmedberg
We'd like the SpiderMonkey configure script to generate a header file
named js-config.h to hold #definitions chosen at configure time that
affect the SpiderMonkey API, like JS_THREADSAFE.  However, that name
is very similar to that of an existing header file, jsconfig.h.  This
patch renames the existing header file, and updates all references to
it.

--HG--
rename : js/src/jsconfig.h => js/src/jsversion.h
2008-09-05 10:19:17 -07:00
Graydon Hoare
aaf41f8ee5 Bug 447713, remove the import/export functionality from spidermonkey, r=brendan 2008-08-06 17:34:58 -07:00