Commit Graph

160 Commits

Author SHA1 Message Date
Luke Wagner
06cc81805b Bug 545165 - fix/simplify JSOP_CONCATN (r=jorendorff) 2010-02-19 19:22:37 -08:00
Brendan Eich
ce5b37f4ed Don't mutate a used name node that has been deoptimized before bailing from BindNameToSlot (546069, r=jorendorff). 2010-02-19 11:27:35 -08:00
Jason Orendorff
095bd890ef Bug 539829 - Encapsulate JSScope::flags. r=Waldo.
--HG--
extra : rebase_source : ced4f057e715075d8e4eff343e824d8934152a7e
2010-02-05 18:11:13 -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
Luke Wagner
7714144859 Bug 535656 - remove JSStackFrame::dormantNext and varobj (r=waldo) 2010-01-29 18:25:16 -08:00
David Mandelin
7178b08092 Bug 541239: don't use upvar for variables in eval if they cross a generator, r=mrbkap 2010-01-21 17:06:11 -08:00
David Mandelin
5bb1cfd035 Bug 540243: don't use JSOP_GETUPVAR if def-use chain crosses a generator lexical scope, r=mrbkap 2010-01-21 13:27:36 -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
Jeff Walden
c6e83b6125 Bug 538482 - |case null| deoptimizes switch statements to use condswitch. r=jorendorff 2010-01-07 17:22:22 -06:00
Blake Kaplan
89b461f976 Bustage fix -- We can't assert that constant folding worked. 2010-01-11 18:52:44 -08:00
Brendan Eich
85a5badeef ES5-conformance fix to make a new RegExp for each regexp literal evaluation (98409, r=igor/jwalden). 2010-01-06 15:12:54 -08:00
David Mandelin
2ab635fbd3 Bug 528644: do not generate JSOP_GETUPVAR in a generator called from eval, r=mrbkap 2010-01-06 14:33:52 -08:00
Jason Orendorff
e5ac8476fd Backed out changeset 3862a7e48e79 due to tinderbox failures on js1_5/GC/regress-324278.js. 2010-01-05 12:48:09 -06:00
Brendan Eich
1b4fbd91e6 ES5-conformance fix to make a new RegExp for each regexp literal evaluation (98409, r=jwalden). 2010-01-04 12:25:44 -08:00
Gregor Wagner
5d706bfc9a fix JS_SCOPE_DEPTH_METER and enable in DEBUG mode
bug #528674, r=gal
2009-12-14 18:36:58 -08:00
Brendan Eich
bc127fbdb6 Beware CALLEE_UPVAR_SLOT when adjusting upvar cookie to skip over args to reach vars in the upar's home frame -- the callee is a special case with a magic slot that must not be changed (528082, r=mrbkap). 2009-11-19 12:14:52 -08:00
Blake Kaplan
f0cd93b989 Bug 461170 - Detect when typeof is applied to an expression before constant folding so we correctly throw unbound name exceptions from the folded expression. r=brendan 2009-11-06 18:27:17 +01:00
Brendan Eich
7931ae3667 Fix js_Emit1 return value tests (522920, r=dvander). 2009-10-17 18:42:58 -07: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
Brendan Eich
e8511cb5ea #ifdef DEBUG to avoid warning (520513 followup). 2009-10-05 23:58:48 -07:00
Brendan Eich
52ecdb575b Deoptimize upvar-for-eval if in for-in loop LHS position (520513, r=mrbkap). 2009-10-05 23:50:42 -07:00
Brendan Eich
8dbcb884d9 Fix constructor method (foo.bar/foo[baz] initialized from a lambda) invocation to go through the method read barrier (518103, r=jorendorff). 2009-10-05 16:55:21 -07:00
David Anderson
3e3b3a2362 Trace recursive function calls (bug 459301, r=gal). 2009-09-30 15:28:00 -07:00
David Mandelin
99fb23d064 Bug 511695: Fix JS warnings in MSVC8, r=brendan 2009-09-23 11:16:30 -07:00
David Anderson
92ad5b2859 Renamed JSOP_LOOP to JSOP_TRACE, which now also gets emitted at the start of scripts (bug 515806, r=brendan). 2009-09-14 17:26:16 -07:00
Brendan Eich
5de171f5f5 Don't assume a script with sharps whose caller has no sharps has no other fixed slots (516262, r=igor). 2009-09-14 10:29:56 -04:00
Brendan Eich
016b0f207a Bug 514981 - JSStackFrame::sharp{Array,Depth} should be locals allocated due to #n[#=] usage (r=igor). 2009-09-09 20:21:15 -07:00
Jason Orendorff
b53824855d Bug 513119 - Change JSScript macros to methods. r=Waldo. 2009-09-09 18:52:55 -05:00
Brendan Eich
cce4dce512 Join lambdas assigned or initialized as methods to the compiler-created function object if we can, with a read barrier to clone on method value extractions other than call expressions (471214, r=jorendorff). 2009-09-03 14:41:19 -07:00
Igor Bukanov
b919139e8d bug 511425 - removal of JSObjectOps.(get|set)RequiredSlot. r=brendan 2009-08-28 09:53:26 +04:00
Luke Wagner
a5b9103165 Bug 419743 - Add JSOP_CONCATN (r=waldo) 2009-08-18 15:43:17 -07:00
Brendan Eich
b063d31520 Back out changeset aff171a8c4f0 (bug 471214). 2009-08-26 09:34:41 -07:00
Brendan Eich
bd8f55c0ad Join function objects where possible (471214, r=igor). 2009-08-25 23:42:37 -07:00
Jason Orendorff
8384b1e239 Bug 509098 - Remove JS_HAS_LVALUE_RETURN support. r=brendan. 2009-08-13 16:18:33 -05:00
Jason Orendorff
3137ee0467 Bug 509636 - Assertion failure: pn->pn_type != TOK_COMMA, at ../jsemit.cpp. r=Waldo.
--HG--
extra : rebase_source : 1d413958d72dc3fda3ade90cf199965fb1d6de61
2009-08-11 15:57:23 -05:00
Jason Orendorff
9dc4a54a5d Bug 498488 - Change some JSObject macros to methods. r=Waldo. 2009-08-11 15:05:44 -05:00
Jason Orendorff
335eeb15af Bug 461269 - Remove TOK_RP nodes from the parse tree. r=brendan. 2009-08-10 14:00:46 -05:00
Robert Sayre
99a0962393 Backed out changeset e09130fcb013 2009-07-28 18:51:35 -04:00
Brendan Eich
8d27b07ec5 Bug 471214 - Join function objects transparently, clone via read barrier to satisfy de-facto standard (r=igor). 2009-07-28 13:20:14 -07:00
Andreas Gal
e7f2714ea1 When finalizing, deallocate memory in a separate thread (505612, r=bent,brendan,waldo). 2009-07-27 21:10:12 -07:00
Andreas Gal
f8892ed21b Shrink slots during GC only, split ReallocSlots into Alloc/Grow/ShrinkSlots (504478, r=igor). 2009-07-16 18:42:54 -07:00
Brendan Eich
f60779aef5 Bug 503343 - Change JSScope macros to methods. r=jorendorff 2009-07-09 15:27:21 -05:00
Jason Orendorff
52fe5a97ba Bug 497618 - Change JSString macros to methods. r=Waldo. 2009-06-10 20:29:44 -05:00
Blake Kaplan
ce23324f11 Bug 496870 - Emit JSOP_STARTXMLEXPR before potentially emitting any LC nodes in a list. r=Waldo 2009-06-08 16:48:30 -07:00
Brendan Eich
046d89233e Fix delete upvar (and local var, too) analysis (496422, r=igor). 2009-06-07 13:07:16 -07:00
Brendan Eich
77da9d75ed Bug 494235: wrap escaping optimized closures for the debugger API (r=igor/mrbkap). 2009-06-04 18:58:47 -07:00
Brendan Eich
38ffcf4dc8 Bug 462704 - [jsd] incorrect lineExtent when a while loop ends a method (r=mrbkap). 2009-05-20 23:35:42 -07:00
Brendan Eich
75497c861c Bug 493177 - Browser crashes in loading of certain page.[@ js_Interpret] (r=mrbkap; take 2). 2009-05-15 17:38:38 -07:00
Brendan Eich
9fcdf01e99 Back out last cset. 2009-05-15 17:32:02 -07:00
Brendan Eich
4c1b058a32 Bug 493177 - Browser crashes in loading of certain page.[@ js_Interpret] (r=mrbkap). 2009-05-15 17:13:34 -07:00