Igor Bukanov
b9b1577eec
bug 630209 - (Compile|Execute)Script that are GC-safe. r=jorendorff
2011-02-03 14:06:21 +01:00
brendan@mozilla.org
649f67b373
Unqualified function invocation doesn't use the global object the property was gotten from as |this| (bug 634590, r=gal).
2011-02-22 22:25:10 -08:00
Jeff Walden
c5252060f7
Back out af1e10bea0f4 from a CLOSED TREE for being orangetastic on one platform.
2011-02-20 21:40:06 -08:00
Andreas Gal
207266110b
Unqualified function invocation doesn't use the global object the property was gotten from as |this| (bug 634590, r=brendan). (relanding in a CLOSED TREE)
2011-02-17 17:52:55 -08:00
Jeff Walden
1e41f95c6d
#jsapi observed the extent of orange in the TM tree and saw that OS X x86 opt was consistently and totally evil. So jwalden was sorry he had ever pushed changes for bug 631135. It broke his heart. And he said, “I will wipe this tree of every push back to 9105cd721d46. Yes, and I will revert the entire TM CLOSED TREE. I am sorry I ever pushed to it.” But 9105cd721d46 found favor with #jsapi.
2011-02-20 17:46:35 -08:00
Andreas Gal
46930e9e54
Unqualified function invocation doesn't use the global object the property was gotten from as |this| (bug 634590, r=brendan).
2011-02-17 17:52:55 -08:00
David Mandelin
cf9cd62096
Backed out changeset b0aa9c20ffe4 -- orange on tinderbox
2011-02-17 18:54:05 -08:00
Andreas Gal
5267af2eaa
Unqualified function invocation doesn't use the global object the property was gotten from as |this| (bug 634590, r=brendan).
2011-02-17 17:52:55 -08:00
Igor Bukanov
e9f9fd9db6
Backed out changeset 510c42c0d472 - bug 633219
2011-02-17 19:39:05 +01:00
Igor Bukanov
8bc1ca45aa
Bug 633219 - replacing per context resolving list with per-thread resolving list. r=lw
2011-02-15 13:57:54 +01:00
Brendan Eich
4906480245
Method read barrier requried when changing attributes but not value (634210, r=jorendorff).
2011-02-15 12:11:04 -08:00
Jason Orendorff
e797306b2f
Bug 631305 - Deleted watchpoints don't always come back when assigned. r=brendan, a=sayrer.
2011-02-08 15:45:13 -06:00
Andreas Gal
5d4e5b427f
js_UnbrandAndClearSlots leaks, use JS_ClearScope and throw if compile-N-go scripts are run after JS_ClearScope (630072, r=brendan).
2011-02-13 20:55:33 -08:00
Luke Wagner
bd58834efa
Bug 630064 - Mark floating generator frame slots conservatively (r=dvander)
...
--HG--
extra : rebase_source : cbddb12142c763e3e20c50e994257cea22f73f8f
2011-02-07 15:55:20 -08: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
Bill McCloskey
40b74847a1
Bug 609104 - Move the property tree to the compartment (r=brendan)
2011-02-04 10:59:07 -08:00
Bill McCloskey
4d89be0bd8
Backed out bug 609104 (csets ac3ba38f20c0 and 7717cabaf20c) (orange)
2011-02-02 14:20:06 -08:00
Bill McCloskey
daa16e64bb
Bug 609104 - Move the property tree to the compartment (r=brendan)
2011-01-27 15:46:39 -08:00
David Mandelin
a4880c2f6d
Bug 611652: clear values instead of scope when global window is cleared, r=brendan,enn,jeff,mrbkap,smaug
...
--HG--
extra : rebase_source : 77e3844d35de229817bee767256a96d030a78bf9
2011-01-21 18:37:30 -08:00
Jeff Walden
13fb18a6fe
Bug 619283 - Built-in JS methods must not box undefined or null into the global object when called, both to comply with ES5 and to prevent inadvertent global object exposure to secure JS variants. r=dmandelin
...
--HG--
extra : rebase_source : be6802a24bd58eb6339369e6803d3eb2fbbc07a5
2011-01-26 13:37:45 -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
Jason Orendorff
f1be13e671
js_InitExceptionClasses was skipping part js_InitClass, leading to "Assertion failure: proto->canProvideEmptyShape". Bug 624968, r=Waldo.
...
--HG--
extra : rebase_source : 08ebb71574a0b1962e8f1c0c3f9a7aa7ec904b03
2011-01-24 17:32:44 -06: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
Jim Blandy
4b5d129a27
Bug 554955: Make JSObject::setMap not pretend to take a const shape. r=jorendorff
...
Without this patch, JSObject::setMap takes a const js::Shape *, which is
kind of misleading. The object will not actually treat the shape as const
(it does a const_cast). At all but one call site, setMap's argument is not
a const shape --- and in fact, many call sites are installing empty shapes
whose role in life is to be extended.
The only place where a const js::Shape appears is in setSharedNonNativeMap,
which is doing something unusual. The const cast should be there.
Changing js::Bindings::lastShape to return a non-const shape is then
natural, and cleans up the definition of initCall coming in the next patch.
2011-01-31 12:08:13 -08:00
Chris Leary
6d0cc31d27
Back out changeset 7d82892cb8df.
2011-01-27 19:43:33 -08:00
Chris Leary
001cef1fd8
Merge the backout head.
2011-01-27 16:26:21 -08:00
Chris Leary
8f8ea8fd48
Backed out changeset b5ca98debed0
2011-01-27 16:25:30 -08:00
Bill McCloskey
a4f9ab0da8
Bug 609104 - Move the property tree to the compartment (r=brendan)
2011-01-27 15:46:39 -08:00
David Mandelin
62ff5f09d8
Bug 611653: clear values instead of scope when global window shuts down, r=brendan,smaug
2011-01-21 18:37:30 -08:00
timeless@mozdev.org
313f426282
Bug 615834 warning: inline function ‘JSCompartment* JSObject::getCompartment() const’ used but never defined. r=gal
...
r=mrbkap
--HG--
extra : rebase_source : fe12e4864bb95a55802be395bd119a064af64baf
2011-01-18 14:25:46 -08:00
Andreas Gal
3c34eab945
Follow-up fix for bug 625559.
2011-01-26 19:19:33 -08:00
Andreas Gal
927855f788
Cache eval CSP check (bug 614137, r=mrbkap, a=dmandelin).
2011-01-22 14:28:37 -08:00
Jason Orendorff
ec712fc18c
Return the new shape from methodWriteBarrier instead of searching for it again. Bug 623863, r=brendan.
2011-01-17 11:30:08 -06:00
Jason Orendorff
f224da500c
Bug 559653 - Record assignment before the interpreter goes, mostly. This reduces record_SetPropHit to a narrower callback, record_AddProperty. r=brendan.
...
--HG--
rename : js/src/jsapi-tests/testSetPropertyWithNativeGetterStubSetter.cpp => js/src/jsapi-tests/testSetProperty.cpp
2011-01-14 16:18:53 -06:00
Jeff Walden
7b5179a175
Bug 514568 - Add JSObject::callIsForEval rather than using JSObject::getCallObjCallee() == NULL. r=igor
2011-01-05 14:54:04 -06:00
Robert Sayre
5001e2565e
Backed out changeset feb6682a10af
2011-01-06 21:40:54 -05:00
Jeff Walden
cf77bbb8be
Bug 514568 - Add JSObject::callIsForEval rather than using JSObject::getCallObjCallee() == NULL. r=igor
2011-01-05 14:54:04 -06: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
Tom Schuster
010f1cebb4
Bug 557353 - JM: PIC for object-wrapped string length. r=dvander
2010-12-30 13:25:03 -06:00
Jeff Walden
a6ce2e1493
Bug 622053 - Streamline and greatly clarify Call object PropertyOp getters and setters, for easier reading and more bounds-checking assertions than the none (!) we had before. r=dmandelin
2010-12-29 22:21:18 -06: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
Jeff Walden
001fbb6163
Update comments on the structure of arguments objects in jsobj.h to account for strict mode arguments. r=commentsonlyfix
2010-12-29 16:45:44 -06:00
Chris Leary
5c3dd7b9ca
Merge mozilla-central to tracemonkey.
2010-12-30 00:36:53 -05:00
Chris Leary
272d457a20
Merge mozilla-central to tracemonkey.
2010-12-29 19:25:04 -05:00
David Mandelin
c3e8135c6a
Bug 595975 diagnostic 2: shape markers and object data, r=billm, a=blocker
...
--HG--
extra : rebase_source : ddc486824d5f4a4e3dfe114ccde7e4841033ebaa
2010-12-28 14:50:01 -08:00
David Mandelin
625946d567
Backed out changeset c35a4e6ea3ca -- done with diagnotics.
2010-12-29 17:46:14 -08:00
Brendan Eich
5eef9df0a1
Implement method thrash counting, at limit unbrand and stick count to limit; also, brand and unbrand return false on shape overflow, so call them that way instead of as if infallible (597864, r=dvander).
2010-11-22 17:58:53 -08:00
Brendan Eich
4a77e53dc1
Add more to {alloc,free}Slot comment, pick closing comment style nit.
2010-12-07 08:36:21 -08:00
David Mandelin
9dd8742e99
Fix tiny formatting botch.
2010-12-06 16:30:47 -08:00
David Mandelin
7da6337736
Bug 601046: fix freelist maintenance and modify shapes in place in changeProperty, r=brendan
2010-12-06 16:27:39 -08:00
Blake Kaplan
6deeefba3d
bug 601803 - Support adopting a node cross-compartment. r=gal/jst
2010-11-15 17:21:25 -08:00
Blake Kaplan
bd44733edc
Backout due to bustage
2010-12-02 17:13:20 -08:00
Blake Kaplan
439ca83a7b
bug 601803 - Support adopting a node cross-compartment. r=gal/jst
2010-11-15 17:21:25 -08:00
Igor Bukanov
f110aa58b7
bug 603318 - make dense array slow during array growth, not during the GC. r=bhackett
2010-10-14 16:12:19 +02:00
Gregor Wagner
a9ae1a03f4
Bug 612015 - Put all external strings in one arena r=igor
2010-11-15 12:39:00 -08:00
Jeff Walden
f8c046f85d
Bug 599464 - Object.preventExtensions should be idempotent. r=brendan
2010-11-12 16:15:55 -08:00
Bill McCloskey
5ad697399b
Bug 610437 - Add equality flag syncing to JSAPI (r=lw)
2010-11-12 10:40:12 -08:00
Brendan Eich
a1f16f2371
Lots of MISMATCH_EXITS exits due to protohazardshape on voxel rendering demo (550391, r=mrbkap).
2010-11-10 10:59:02 -08:00
Brendan Eich
126b6b5647
Prebrand standard classes with standard methods (610698, r=jorendorff).
2010-11-09 11:40:56 -08:00
Jeff Walden
b5ac7e26bd
Bug 608959 - Don't call non-scripted getters with a proxy as its |this|, because that would require most non-scripted getters to unwrap and maybe do some prototype-chain walking. r=mrbkap
2010-11-04 15:53:50 -07:00
Luke Wagner
3e678c7088
Fix strict-aliasing warning from 18d56745c3e6
...
--HG--
extra : rebase_source : 446fc01cba89ea45825cd1dc10716a05b9ec9818
2010-11-08 14:35:06 -08:00
Luke Wagner
977a639eeb
Bug 605192 - JM: make f.apply(x, obj) fast, part 1 (r=waldo)
...
--HG--
extra : rebase_source : cceaabf5a68cae8bfa67320b4a47f0673ade86c6
2010-10-20 23:52:55 -07:00
Luke Wagner
0499a94583
Bug 607659 - Avoid calling getters/setters from TraceRecorder::callNative (r=jorendorff)
...
--HG--
extra : rebase_source : f1cd30d6a50c12fc7884122aebeb69d9010b04d6
2010-11-02 17:36:26 -07:00
Blake Kaplan
c0e2873909
Bug 596031 - 'this' is wrong in getters and setters when a proxy object is on the prototype chain. r=brendan/jorendorff/gal
...
--HG--
extra : rebase_source : 609b96c4b461e33f0f79dc74f714edfa882d1da0
2010-10-29 10:42:35 -07:00
Jeff Walden
630aabe371
Bug 604504 - Implement an eval kernel that obj_eval and JSOP_EVAL can each call. r=jorendorff,dvander
2010-10-21 14:31:29 -07:00
Jason Orendorff
bfaf004fd7
Merge.
2010-10-22 19:11:26 -05:00
Jason Orendorff
596862d852
Remove JSObject::title. Bug 606029, r=igor.
2010-10-22 19:04:22 -05:00
Andreas Gal
a4b0c37cda
Remove obsolete wrappedObject extended class hook (604523, r=mrbkap/vlad/dvander).
2010-10-22 15:40:11 -07:00
Jeff Walden
56ecdd26a0
Bug 604504 - Separate JSOP_EVAL code from JSOP_CALL/JSOP_APPLY code, to disentangle the core functionality of eval from the method in question. r=jorendorff
2010-10-07 13:59:56 -07:00
Andreas Gal
6e672eda05
Backed out changeset 438afef93fd5 (bug 604523) due to suspected orange.
2010-10-20 23:19:05 -07:00
Andreas Gal
e5f45d98a2
Remove obsolete wrappedObject extended class hook (604523, r=mrbkap/vlad/dvander).
2010-10-20 22:41:35 -07:00
Dave Herman
7488e1af91
bug 594060, r=cdleary: Reflect.parse(): make source location information optional
2010-10-19 09:00:51 -07:00
Bill McCloskey
1b9d7cdaa6
Bug 599214 - JM: Add a fast path for object equality (r=dvander,nnethercote)
2010-10-18 17:04:43 -07:00
Nicholas Nethercote
913bd8a149
Bug 584279 - TM: improve alias analysis by adding many more access regions (2nd attempt). r=bhackett.
2010-10-18 12:55:56 -07:00
Nicholas Nethercote
be2aa1d407
Backed out changeset c961a413660c
2010-10-17 23:24:26 -07:00
Nicholas Nethercote
e48a2774f0
Bug 584279 - TM: improve alias analysis by adding many more access regions. r=bhackett.
2010-10-17 18:42:58 -07:00
Jeff Walden
516e962572
Remove declaration for the never-defined js_GetWrappedObject method (obj->wrappedObject(cx) was the long-ago replacement). r=sparky
...
--HG--
extra : rebase_source : d50bcf859e415469494e53426ba51d0e4304e676
2010-10-07 16:37:38 -07:00
Brian Hackett
f9cf7a5b7d
Flexible length JSObject, bug 584917. r=brendan,igor
2010-10-13 11:49:22 -07:00
Andreas Gal
3d567b4e1a
Bug 580128 - Small cleanups in XrayWrapper and first stab at enumeration. r=mrbkap
2010-10-10 15:37:22 -07:00
Andreas Gal
04c3f3cf48
bug 599503 - Return true compartment info from JSObject::getCompartment(). r=jorendorff/gregor/gal
2010-09-27 13:49:09 -07:00
Blake Kaplan
d8815d1675
Bug 580128 - Fix compartment warnings by entering. r=gal/peterv/jst/mrbkap/jorendorff (and written by all of us too).
2010-09-22 17:34:20 -07:00
Blake Kaplan
03cb31a09c
bug 580128 - Rewrite XrayWrapper so the wrapped object is in the wrapped object slot and the holder goes in an extra slot. r=gal
2010-09-20 14:48:01 -07:00
David Anderson
552330f091
ICs for scripted new (bug 589398, r=luke,dmandelin).
...
--HG--
extra : rebase_source : d7311ce916e8d6c876d1851090806bc7d073bd63
2010-10-04 14:13:33 -07:00
David Anderson
6dbf424efd
Backed out changeset de5d1b528b9a
2010-10-04 15:12:00 -07:00
David Anderson
6ddd3429fc
ICs for scripted new (bug 589398, r=luke,dmandelin).
2010-10-04 14:13:33 -07:00
Jason Orendorff
630900ee20
Finally get rid of /* Added by JSIFY */ comments. r=Waldo.
2010-10-01 18:46:54 -05:00
David Anderson
2f002d500e
Add local and argument closure information to JSScript (bug 592973, r=brendan+dmandelin).
...
--HG--
extra : rebase_source : 3d36a7908230006f2b048835f7526962fac2b32b
2010-09-13 22:33:44 -07:00
Ginn Chen
5b67866f99
Bug 584305 Define no extern "C" version ObjectOps to fix build issue with Solaris Studio r=brendan
2010-09-28 17:59:25 +08:00
Brendan Eich
4244210552
Object.defineProperty should avoid JS API inside engine, plus a few other cleanups (598176, r=jorendorff).
2010-09-16 23:07:02 -07:00
Gregor Wagner
fdb731becb
Bug 558861 - Compartmental GC (r=gal)
2010-09-24 10:54:39 -07:00
Brendan Eich
c27e88caa4
Fix shape vs. slot management under putProperty, plus related layering and error reporting fixes (596805, r=jorendorff).
2010-09-16 11:56:54 -07:00
Jim Blandy
96d7c2007b
Bug 492849 - Implement Object.preventExtensions, Object.isExtensible. a=waldo,jimb, r=brendan
...
--HG--
rename : js/src/jsapi-tests/testSeal.cpp => js/src/jsapi-tests/testDeepFreeze.cpp
2010-09-21 11:35:29 -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
Chris Leary
c1efc206b8
Fix windows build breakage.
2010-09-16 01:38:19 -07:00
Chris Leary
204b2a98e5
Bug 596026: PIC-like construct for GETELEM on trace. (r=jorendorff, a=nnethercote,cdleary)
...
--HG--
extra : rebase_source : 63b57898593b2b178a7ebb1f38071c1058ccb4f7
2010-09-15 21:33:17 -07:00
Jim Blandy
2a3cf83056
Bug 537873, Bug 514574: Have strict mode code report TypeErrors for assignments, deletions. r=brendan
...
TODO: Fix error messages.
2010-09-15 13:43:55 -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
Brendan Eich
6ba6389297
Rename freeslot appropriately (593256 separated cosmetics-only patch, r=jorendorff).
2010-09-03 11:05:43 -07:00