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
Jeff Walden
76a4343e93
Bug 652215 - Add a js::StringObject subtype of JSObject. r=njn
...
--HG--
extra : rebase_source : 7cdfe72d0932b51408b9ec5dc38219605e1925ce
2011-04-20 16:33:05 -04:00
Paul Biggar
e4d6748cc4
Bug 642772: Don't recreate a class during enumeration, if it has been deleted (r=bhackett)
...
In SM, classes are lazily resolved. If we detect that a class about to be used
has not yet been resolved, then we resolve it. However, the way that we decided
that they were resolved was broken. If the global object had a String property,
then it had been resolved. So what happened when we deleted the String
property? Well, it got resolved again.
Instead of using the String property of the global object, we now use the
contructor slot on the global object. This works fine for String, but some
classes don't have a constructor, like Math and JSON. For those classes, we set
the constructor slot to True. In either case, we can now tell that a class is
resolved if the constructor slot in not Undefined.
2011-04-27 04:13:56 -07: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
Jeff Walden
a8a0234d77
Bug 641655 - Add a js::GlobalObject subtype of JSObject. r=njn
2011-04-18 16:50:47 -04:00
Jeff Walden
77e6fd7646
Backed out changeset c8ba5bd72b0c, we have too many test harnesses and I forgot to run one. r=tree-decorator
2011-04-21 16:29:54 -04:00
Jeff Walden
f7e9104cd4
Bug 641655 - Add a js::GlobalObject subtype of JSObject. r=njn
2011-04-18 16:50:47 -04:00
Bill McCloskey
4a9bde3182
Bug 648647 - Eliminate JSObjectMap (r=jorendorff)
2011-04-08 14:21:08 -07:00
Bill McCloskey
3c0cd83aa3
Bug 616666 - Use explicit stack for GC marking (r=gal)
2011-04-15 16:56:08 -07:00
Andreas Gal
fd2168c3af
Implement Harmony weak maps (bug 547941, r=jorendorff).
2011-04-16 21:23:44 -07:00
Jason Orendorff
28a0d1622a
Bug 614714 - Change JS_ClearScope to use the new enumeration code. r=Waldo.
2011-04-14 16:59:26 -07:00
Luke Wagner
64207228c7
Bug 602994 - Clean up eval, remove unneeded security checks, assert equivalence of principal lookup (r=waldo,mrbkap)
2011-04-08 10:52:51 -07:00
Luke Wagner
774c050740
Bug 602994 - Preparatory syntactic cleanup (r=waldo)
2011-04-08 10:52:48 -07:00
L. David Baron
0a579a3bbb
Back out changeset 7dcd0d16cc08 (bug 547941) for causing jsreftest crashes on debug builds.
2011-04-12 01:28:40 -07:00
Andreas Gal
55fc66a7e0
Bug 547941 - WeakMap. r=jorendorff.
2011-04-11 22:38:11 -07:00
Jeff Walden
484a36371d
Bug 640503 - Convert new String().length to use a regular data property and not a shared-permanent property-op getter/setter. r=jorendorff
...
--HG--
extra : rebase_source : 06bb9b53c0498d20b3afc6e558096c2398559602
2011-03-13 20:38:34 -07:00
Jeff Walden
208cb6e474
Bug 645468 - Remove js_TryMethod: its semantics aren't what most of its users want, and its utility is limited. r=luke
2011-03-28 20:01:53 -07:00
Paul Biggar
43b850291d
Bug 643548: Remove mozalloc_undef_macro_wrappers hack from JS engine. (r=luke,rs=brendan)
...
mozalloc_undef_macro_wrappers are brittle and have side-effects that are hard
to debug and fix. The alternative is the just stick an underscore on the end of
malloc, free, etc, which is a comparatively small burden.
2011-03-31 01:14:12 -07:00
Jeff Walden
c9809f07b4
class RegExp, not struct RegExp. r=windows-bustage
...
--HG--
extra : rebase_source : 5c31a9b6a5309548db45d2756f03abeec23ed2f9
2011-03-24 15:04:54 -07:00
Jeff Walden
4dce1d9ffa
Bug 640072 - Convert properties of RegExp objects into true data properties, eliminating a use of shared-permanent properties. r=jorendorff
2011-03-05 15:29:30 -08: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
Bill McCloskey
0f733168cb
Bug 569422 - Allocate js::Shape from the GC heap (r=brendan)
2011-03-23 11:57:44 -07:00
Bill McCloskey
aa21051629
Bug 569422 - Miscellaneous fixes for GCed shapes (r=brendan)
2011-03-23 11:57:19 -07:00
Igor Bukanov
6990aee491
Bug 633219 - replacing resolve hashtable with a linked list. r=luke
2011-03-07 23:00:00 +01: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
Jim Blandy
50a3f48159
Bug 554955: Make JSObject::setMap not pretend to take a const shape. r=jorendorff
2011-03-15 12:18:36 -07:00
Andreas Gal
0dec3716f6
Inline GC mark path (bug 639729, r=billm).
2011-03-13 18:13:52 -07:00
Jeff Walden
6de99f0675
Bug 638997 - Remove the id field from PropDesc: users who needed it should manage the id separately. r=luke
...
--HG--
extra : rebase_source : eb2152a2259a81bca1d7a4f5521787f9385a3c6f
2011-03-04 17:24:15 -08:00
Jeff Walden
fc5075d1f7
Bug 608473 - |var eval = otherWindow.eval; eval(...)| should behave like indirectly calling that eval from a script in that other window. r=jorendorff
...
--HG--
extra : rebase_source : 9accca7e9a2b8304c2c823852cfd71b13c595afe
2011-03-02 20:56:37 -08:00
Jeff Walden
2db290c32a
Bug 638312 - Add JS_IsBuiltinEvalFunction and JS_IsBuiltinFunctionConstructor APIs. r=gal
2011-03-02 19:57:44 -08:00
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