Luke Wagner
0d7bf8cc22
Bug 656462, part 4 - Simplify stack code, keep track of native calls, create new iterator over native/scripted callstack, make JS_SaveFrameChain fallible (r=waldo,mrbkap)
...
--HG--
extra : rebase_source : 756a640568464d11fe6bb00104a2fdb6f6d02d02
2011-05-13 08:56:26 -07:00
Luke Wagner
fe7b0581ce
Bug 656462, part 2 - Merge ContextStack::get* and push* operations (r=waldo)
...
--HG--
extra : rebase_source : bdc7a7ba9ee21435a20e77bf6cea8c4d34a840c9
2011-05-24 16:04:18 -07:00
Bill McCloskey
6a8823ab66
Bug 658055 - Always use getter to access fun->script() (r=dmandelin)
2011-05-20 11:27:27 -07:00
Chris Leary
a7253cc393
Bug 654301: Better interned string API, take 2. (r=Waldo)
2011-05-17 12:15:12 -07:00
Chris Leary
089bf2c468
Back out bug 654301 to run again on try.
2011-05-16 19:03:20 -07:00
Chris Leary
338cf025af
Bug 654301: Better interned string API. (r=Waldo)
2011-05-16 18:18:59 -07:00
Jeff Walden
5d29251946
Bug 652746 - Implement js::ArgumentsObject, js::NormalArgumentsObject, and js::StrictArgumentsObject. r=njn
...
--HG--
extra : rebase_source : 84258ffa658ba09928ab9b86f8017fa6683f3146
2011-04-25 22:40:00 -04:00
Ryan VanderMeulen
36e9afa970
Bug 653959 - Fix warning spam by using consistent declaration for js_DeclEnvClass. r=luke
2011-05-05 17:53:36 +02:00
Luke Wagner
05d2002b66
Bug 644074 - Simplify and consolidate VM stack code into js/src/vm/Stack*
2011-04-13 09:27:37 -07:00
Tom Schuster
de983504ce
Bug 202019 - Objects with [[Call]] arent automatically constructbale r=jorendorff
2011-04-26 00:28:30 +02:00
Jason Orendorff
7c1bcbce33
Backed out changeset e02df4a05968 due to orange.
2011-04-20 16:10:38 -05:00
Tom Schuster
479dc912bc
Bug 202019 - Built-in functions should not be constructors. r=jorendorff.
...
--HG--
extra : rebase_source : 2f845218384004c09a60c59ae03704729f1d91dc
2011-04-20 13:22:57 -05:00
Luke Wagner
a15ba4f804
Bug 636296 - Change meaning of JSStackFrame::hasCallObj to be more sane (r=waldo)
2011-03-14 11:30:36 -07:00
Luke Wagner
7c96945e3c
Bug 613457 - clean up string interfaces (r=njn)
...
--HG--
extra : rebase_source : 3e77b67fa9fe2cc31312ad99951cf92258a98e64
2011-03-14 13:59:53 -07:00
Jim Blandy
df6f0b2ee9
Bug 554955: Give blocks and call objects unique shapes when they have parents that may be extended with new bindings. r=jorendorff
...
The comments for js::Bindings::extensibleParents explain why this is necessary.
AssertValidPropertyCacheHit should have been catching this bug, but for
reasons I don't understand, it is restricted from checking this case. This
patch extends it to assert when the bug is detected.
I've gathered the infallible parts of the initialization for Call objects
and cloned block objects into their own functions.
2011-03-15 12:18:36 -07:00
Jeff Walden
2db290c32a
Bug 638312 - Add JS_IsBuiltinEvalFunction and JS_IsBuiltinFunctionConstructor APIs. r=gal
2011-03-02 19:57:44 -08:00
Luke Wagner
08e66296bc
Bug 634542 - Back out diagnostic patches (r=dvander,a=backout)
2011-02-19 14:37:46 -08:00
Luke Wagner
e8cc2a25ba
Luke Wagner – Bug 634542 - Temporary diagnostic patch 2 (r=dvander,a=shaver)
2011-02-18 18:38:10 -08:00
Jason Orendorff
d064deac4d
Bug 630865 - Resolve interpreted function prototypes more eagerly. r=dvander.
2011-02-14 14:04:07 -06:00
Jim Blandy
de75b9fa19
Bug 537873: Add a 'strict' argument to C++ property setter functions. r=brendan
...
This changes the type of setters to JSStrictPropertyOp, which is just like
JSPropertyOp except that it takes a 'JSBool strict' argument. Most of the
patch is introducing distinct types and using the appropriate stubs.
The following are left for subsequent patches:
x Similar fixes to the browser outside SpiderMonkey.
x Actually *using* the newly available strictness information. This patch
should have no user-visible effect. I didn't want the interesting stuff
to get lost in this noise.
2011-02-09 11:31:40 -08:00
Jim Blandy
2016210905
Bug 554955: Revert fix (changesets 297b1312f534, 18a1effafe19, 26d40e1e80bf, f6117465a979): 14% performance hit as measured by Talos. r=talos
2011-01-31 16:48:26 -08:00
Jim Blandy
a237e87988
Bug 554955: Give blocks and call objects unique shapes when they have parents that may be extended with new bindings. r=jorendorff
...
The comments for js::Bindings::extensibleParents explain why this is necessary.
AssertValidPropertyCacheHit should have been catching this bug, but for
reasons I don't understand, it is restricted from checking this case. This
patch extends it to assert when the bug is detected.
I've gathered the infallible parts of the initialization for Call objects
and cloned block objects into their own functions.
2011-01-31 12:08:13 -08:00
Andreas Gal
3c34eab945
Follow-up fix for bug 625559.
2011-01-26 19:19:33 -08:00
Blake Kaplan
8f27ca08f2
Catch chrome eval escaping into content (bug 625559, r=gal).
2011-01-26 18:28:49 -08:00
Brendan Eich
0b7d9754dc
Get rid of JSOP_{GET,CALL}UPVAR and simplify code greatly (592202, r=jorendorff).
2010-12-29 23:46:50 -08:00
Jeff Walden
de8c94c378
Bug 514568 - Use a fresh variable environment for strict mode code run by eval, and give strict mode eval code frames a Call object backed by those variables. r=igor
2010-10-12 11:38:06 -07:00
Jeff Walden
f7bec8a9e8
Bug 614493 - Move top-level binding storage (and argument, variable, and upvar counts) out of JSFunction and into js::Bindings, itself stored in JSScript, anticipating the time when strict mode eval scripts will need it. r=brendan
2010-11-16 15:34:24 -08:00
Brendan Eich
0e94dad967
Restore append-only fun->u.i.names rule by binding destructured-to vars for destructuring args after binding all args (619003, r=igor).
2010-12-27 15:10:58 -08:00
Jeff Walden
e2834ef56d
Require JSFunction::inStrictMode() callers to check for isInterpreted() first, since most already know that the function in question is interpreted. r=dmandelin
2010-12-22 21:06:08 -05:00
Jeff Walden
59814e4551
Bug 620315 - "Assertion failure: unexpected constantly false guard detected" with "use strict", 4 > this. Fix a problem where we weren't marking functions created by |new Function| as accepting a primitive this value when their body was strict mode, by removing the duplicative bit that was being checked. r=dmandelin
2010-12-22 18:05:07 -05:00
Luke Wagner
91eabb4690
Bug 561954 - Abort recording earlier to avoid expensive later bails (r=jorendorff)
...
--HG--
extra : rebase_source : d2a54d2513fe8f69dcdaa5bad8dc0ce8c8ee634e
2010-11-18 10:49:45 -08:00
Jeff Walden
88d923a99a
Bug 614338 - Move some call object property methods into the js namespace. r=dmandelin
...
--HG--
extra : rebase_source : 3816a3ae6d775e5866030c8a51cc305f09dda1f2
2010-11-16 15:30:57 -08:00
Luke Wagner
9db98566fb
Backed out changeset 31e0cd11f015
2010-11-18 16:58:16 -08:00
Luke Wagner
319ccaa65d
Bug 561954 - Avoid costly deep bail by aborting earlier on bad global prop access (r=jorendorff)
2010-11-18 10:49:45 -08:00
Jeff Walden
8cb990a0d3
Make JSTreeContext::fun and JSTreeContext::scopeChain private (they share a union), and provide accessors that assert that the tree context is or is not in a function, as appropriate. r=dvander
2010-11-16 14:13:29 -08:00
Igor Bukanov
52ea348c4c
bug 610198 - Replacing JS_GetStringBytes usage with JS_EncodeString. r=gal
2010-11-11 21:40:29 +01:00
David Anderson
7487c14d37
Backed out changeset 8e119f847f97 (build busted)
2010-11-11 11:19:42 -08:00
Igor Bukanov
e32ba97023
bug 610198 - Replacing JS_GetStringBytes usage with JS_EncodeString. r=gal
2010-11-02 15:36:25 +01:00
Igor Bukanov
92b67c9caf
bug 607695 - Avoid unnecessary JS_GetStringBytes. r=gal
2010-10-28 17:15:53 +02:00
Luke Wagner
af51d6c49c
Bug 602129 - JM: make f.call(...) fast, part 2 (r=dvander)
...
--HG--
extra : rebase_source : 19405a1ec0337f39edfc3a6fe4543038c991f132
2010-10-15 19:11:51 -07:00
Brian Hackett
f9cf7a5b7d
Flexible length JSObject, bug 584917. r=brendan,igor
2010-10-13 11:49:22 -07:00
Jeff Walden
fcbd8eb10b
Bug 514570 - 1 - Convert primitive-this-of-type function flags into a single primitive-this flag, to pave way for strict mode unadulterated-this passing. r=jorendorff
2010-10-12 11:50:02 -07:00
Bill McCloskey
05473d29a8
Bug 601986 - Make blockchain determination faster for with, flat closures (r=igor)
2010-10-06 10:41:36 -07:00
Brendan Eich
853d03c5d2
Per ECMA-262, no .prototype for built-in functions and Function.prototype (445319, r=Waldo).
2010-10-03 22:46:39 -07:00
Gregor Wagner
fdb731becb
Bug 558861 - Compartmental GC (r=gal)
2010-09-24 10:54:39 -07:00
Brian Hackett
066d48b6b6
Backed out changeset 09ffb30caa47
2010-09-20 12:05:21 -07:00
Brian Hackett
e8819f33fa
Make JSObject flexible length, bug 584917. r=brendan
2010-09-20 11:40:32 -07:00
David Anderson
3bced69ba2
Fix instanceof with bound functions (bug 597167, r=brendan).
2010-09-16 19:31:11 -07:00
Luke Wagner
562fc49870
Bug 539144 - Make formal args a jit-time const offset from fp; rm argv/argc/thisv/script/callobj (r=brendan,dvander)
2010-08-09 22:43:33 -07:00
Luke Wagner
5e9978f911
Bug 581263 - remove slow natives (r=waldo,mrbkap)
2010-08-16 12:35:04 -07:00