Commit Graph

986 Commits

Author SHA1 Message Date
Jason Orendorff
fcfd80cfc5 Merge from TM. Huge merge. Stack changes from bug 656462. 2011-06-15 16:14:09 -05:00
Jim Blandy
a282ee62d3 Bug 660039: Provide a WeakMap usable from C++. r=jorendorff
Remove WeakMap class; implement the JavaScript object using functions static to jsweakmap.cpp.

Define a new WeakMap class template, parameterized by Key and Value types,
and accepting a MarkPolicy argument saying how to mark them.

Add assertions to check that we check and set the right mark bits, and
tests that trip them in the presence of mistakes in earlier revisions of
this patch.
2011-06-14 19:21:47 -07:00
Nikhil Marathe
acda759fc1 Bug 656519 - Avoid a malloc (and a finalizer) by storing the malloc'd array in our slots instead of in a separate malloc'd structure in our private field. r=mrbkap
--HG--
extra : rebase_source : 791ede2d8db96f56e4ef8478d491aec413d3e392
2011-06-14 15:33:11 -04:00
Jim Blandy
88decefd28 Merge from TM. 2011-06-07 12:12:28 -07:00
Jim Blandy
8bd7752c01 Backed out changeset d02083014f57; build problems in nsXPConnect.cpp 2011-06-06 09:01:47 -07:00
Jason Orendorff
6a958619a0 Automatically turn debug mode on/off when adding/removing debuggees.
This allows most of the tests to run without the -d command-line flag.

Now a compartment is in debug mode if
 * JSD1 wants debug mode on, thanks to a JS_SetDebugMode* call; OR
 * JSD2 wants debug mode on, because a live Debug object has a debuggee
   global in that compartment.

Since this patch only adds the second half of the rule, JSD1 should be
unaffected.

The new rule has three issues:

1. When removeDebuggee is called, it can cause debug mode to be turned
   off for a compartment. If any scripts from that compartment are on
   the stack, and the methodjit is enabled, returning to those stack
   frames will crash.

2. When a Debug object is GC'd, it can cause debug mode to be turned off
   for one or more compartments. This causes the same problem with
   returning to deleted methodjit code, but the fix is different: such
   Debug objects simply should not be GC'd.

3. Setting .enabled to false still does not turn off debug mode
   anywhere, so it does not reduce overhead as much as it should.

A possible fix for issue #1 would be to make such removeDebuggee calls
throw.  The fix to issues #2 and #3 is to tweak the rule--and to tweak
the rule for Debug object GC-reachability.

--HG--
rename : js/src/jit-test/tests/debug/Debug-ctor.js => js/src/jit-test/tests/debug/Debug-ctor-01.js
2011-06-02 21:58:46 -05:00
Brian Hackett
5c5438cc38 Merge TM -> JM 2011-06-02 12:59:28 -07:00
Brian Hackett
82abccdd14 [INFER] Move inference methods out of JSContext, bug 657412. 2011-06-02 10:40:27 -07:00
Alon Zakai
2f4274045c Bug 644241, part 1 - Remove script stack quota. r=igor 2011-06-03 17:54:26 -07:00
Brian Hackett
fc432bc610 [INFER] Reduce inference changes to JSAPI, bug 657412. 2011-05-30 13:28:01 -07:00
Bill McCloskey
c23838f371 Fix jstest timeouts caused by patch for bug 650978 2011-06-02 15:07:01 -07:00
Gregor Wagner
9ce0f0d1ba Bug 660329 - GC: add reason for GC to GCTimer. r=igor 2011-06-02 13:02:21 -07:00
Brian Hackett
1354314184 Merge TM -> JM 2011-05-27 15:08:04 -07:00
timeless@mozdev.org
0333a7ce54 Bug 620251 js_CurrentThread and friends should have AndLockGC in their name
r=jorendorff
2011-05-27 10:58:26 -07:00
Jason Orendorff
0305e45450 Merge from tracemonkey to jsdbg2. 2011-05-25 17:52:35 -05:00
Brian Hackett
1e358b51f6 Merge TM -> JM 2011-05-22 08:59:06 -07:00
Luke Wagner
c9e1bf13c0 Bug 667915 - Don't let content JS consume all the stack and cause chrome JS to OOM (r=waldo,mrbkap) 2011-06-30 09:26:56 -07:00
Jason Orendorff
2e05c87e09 Require the CCW slot of a Debug.Object object to contain an actual cross-compartment wrapper. That way, per-compartment GC never collects referents, simplifying sweep phase. 2011-05-21 00:40:33 -05:00
Brian Hackett
f1b91c8773 [INFER] Analysis and compiler improvements for polymorphic call sites, bug 653962. 2011-05-20 19:33:06 -07:00
Jason Orendorff
8d48b54691 Merge from tracemonkey to jsdbg2. 2011-05-20 11:34:31 -05:00
Chris Leary
a2d213f0d0 Bug 619561: GC telemetry hooks for TestPilot study. (r=billm) 2011-05-20 13:40:06 -07:00
Bill McCloskey
6a8823ab66 Bug 658055 - Always use getter to access fun->script() (r=dmandelin) 2011-05-20 11:27:27 -07:00
Bill McCloskey
b902b98248 Bug 650978 - Add gczeal setting to GC on every allocation (r=gwagner) 2011-06-01 17:48:52 -07:00
Bill McCloskey
719f0678e9 Bug 652985 - Use off-the-books malloc in DumpHeap (r=pbiggar) 2011-06-01 17:48:02 -07:00
Brian Hackett
14097cb845 [INFER] Remove cx->newTypeObject, bug 657412. 2011-05-19 09:15:12 -07:00
Brian Hackett
4cb0c5c5ef [INFER] Cleanup for review, bug 657412. 2011-05-16 22:59:40 -07:00
Chris Leary
8a58ce9072 Bug 657537: clean up jschar inflation/deflation. (r=Waldo) 2011-05-26 15:50:05 -07:00
Brian Hackett
98763bc2cb [INFER] Move addTypeProperty barriers under obj->setProperty, obj->defineProperty, bug 619693. 2011-05-16 16:15:37 -07:00
Jason Orendorff
001c42745d Merge from tracemonkey to jsdbg2. This merge reveals a bug in DebugFrame_getOlder, to be fixed separately. 2011-05-16 17:50:52 -05:00
Brian Hackett
afdce01248 Merge TM -> JM 2011-05-15 11:32:09 -07:00
Brian Hackett
55015fcf39 Merge TM -> JM 2011-05-11 20:37:23 -07:00
Brian Hackett
82629392f1 [INFER] Inlined natives for Array.{push,pop}, object flag cleanup, bug 653962. 2011-05-10 23:33:30 -07:00
Gregor Wagner
dc5385284e Bug 603916 - unifying GC sheduling. r=igor 2011-05-10 22:37:11 -07:00
Luke Wagner
87add7e577 Backed out changeset 0cf822d12c64 (and dependent be91fb29d950 and 53dd7a930bae) due to intermittent crashes
--HG--
extra : rebase_source : 9c96a4ac164ef8929591ef3d83ad6c974642557a
2011-08-15 17:21:23 -07:00
Igor Bukanov
d7a71da4ae bug 674251 - making JSScript a GC-thing. r=jorendorff
--HG--
extra : rebase_source : 8cec41c8afb99951e469eb3a97c0d48cb5da0b4f
2011-08-17 10:07:04 +02:00
Brian Hackett
c930c3e982 Merge TM -> JM
--HG--
rename : js/src/GlobalObject.cpp => js/src/vm/GlobalObject.cpp
2011-05-09 09:49:48 -07:00
Brian Hackett
417f1e64b9 [INFER] Remove on stack recompilation, allow removed on stack JIT frames to rejoin into the interpreter, bug 650163. 2011-05-09 07:12:47 -07:00
Jason Orendorff
03415943ee Merge from tracemonkey to jsdbg2. 2011-05-04 12:13:58 -05:00
Brian Hackett
c54f0f760a [INFER] Add read barrier for shapes with non-standard getters, bug 653639. 2011-04-30 19:42:58 -07:00
Brian Hackett
b6adf3132e [INFER] Understand types of window objects, bug 653639. 2011-04-30 17:53:40 -07:00
Jason Orendorff
a0e4b2bf22 Merge from tracemonkey to jsdbg2. 2011-04-29 10:12:46 -05:00
Paul Biggar
b005c6c2d4 Merge backout. 2011-04-29 04:01:23 -07:00
Paul Biggar
15828cd649 Backed out changeset 334ada87e329 (bug 628332) - those a11y errors arrived at the same time as this landing, so backing this out to see if that fixes it. 2011-04-29 04:00:57 -07:00
Brian Hackett
838352f9db Merge TM -> JM 2011-04-28 13:02:47 -07:00
Christian Holler
faf48eb1e7 Bug 628332 - Avoid double-frees when compartment allocation fails (r=billm). 2011-04-27 16:09:00 -07: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
Jason Orendorff
782cb92948 Merge from tracemonkey to jsdbg2. 2011-04-26 14:45:06 -05:00
Chris Leary
e5b4259e5a Bug 654792: Give Shape::shape and Shape::id better names for great justice. (r=jorendorff) 2011-05-04 12:01:39 -07:00
Bill McCloskey
194a0b290d Bug 657710 - Fix strict aliasing warning (r=luke) 2011-05-18 10:23:08 -07:00
Philipp von Weitershausen
4cba1e98dd Bug 655641 - Expose RegExp flags and source in JS API. r=gal 2011-05-08 22:10:21 -05:00
Paul O'Shannessy
c6e3f311c7 Bug 650931 - No API to determine if a JSObject is a RegExp. r=gal 2011-05-17 20:04:28 -07:00
Chris Leary
a7253cc393 Bug 654301: Better interned string API, take 2. (r=Waldo) 2011-05-17 12:15:12 -07:00
Christian Holler
b0902374f8 Bug 628332 - Avoid double-frees when compartment allocation fails (r=billm). 2011-05-03 04:26:40 -07:00
Brian Hackett
fe5aeaab19 Merge TM -> JM 2011-04-20 11:37:46 -07:00
Brian Hackett
68b35100e1 Merge TM -> JM 2011-04-19 08:23:41 -07:00
Jason Orendorff
5e2c73b316 Add rudimentary support for Debug.prototype.hooks.debuggerHandler. Note: A new constant JSPROP_NATIVE_ACCESSOR is added in jsapi.h, so that js_InitClass can create proper accessor properties. 2011-04-18 17:42:07 -05: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
Luke Wagner
b02663aef4 Fix typo in --enable-threadsafe builds (r=burning) 2011-04-20 19:29:11 -07:00
Luke Wagner
6e9ef90124 Bug 651041 - add API to store private data to an external string (r=njn) 2011-04-20 18:34:49 -07:00
Bill McCloskey
3c0cd83aa3 Bug 616666 - Use explicit stack for GC marking (r=gal) 2011-04-15 16:56:08 -07:00
Brian Hackett
fc65b95530 Merge TM -> JM 2011-04-13 06:45:06 -07:00
Blake Kaplan
d7c603eab8 Bug 618176 - Skip multiple wrappers when deciding whether this object is an array. r=gal 2011-04-12 15:56:45 -07:00
Brian Hackett
83e8f1e4ab Merge TM -> JM 2011-04-12 07:04:45 -07:00
Brian Hackett
e4deebb68d Merge TM -> JM 2011-04-11 07:33:47 -07:00
Ed Morley
90a849de12 Bug 647389 - Remove WINCE stuff from Spidermonkey (r=jorendorff) 2011-04-09 20:17:53 +01:00
Brian Hackett
012e3b1119 Merge TM -> JM 2011-04-08 19:27:14 -07:00
Bill McCloskey
4a9bde3182 Bug 648647 - Eliminate JSObjectMap (r=jorendorff) 2011-04-08 14:21:08 -07:00
Brian Hackett
4226ea1e6e [INFER] Array bounds check hoisting, cleanup, bug 618690. 2011-04-05 18:12:03 -07:00
Brian Hackett
8b7888dd66 Merge TM -> JM 2011-04-01 19:57:28 -07:00
Brian Hackett
a1f196a052 [INFER] More fixes for stock JM behavior, bug 647048. 2011-04-01 17:26:34 -07:00
Jeff Walden
9d216339ba Bug 646129 - [[DefaultValue]] on Date objects is wrong when called with no hint. r=luke 2011-04-01 15:24:21 -07:00
Andreas Gal
fd2168c3af Implement Harmony weak maps (bug 547941, r=jorendorff). 2011-04-16 21:23:44 -07:00
Wes Garland
256dd8ad05 Bug 586016, update JS_GetImplementationVersion. r=jorendorff 2011-04-16 14:16:50 -04:00
Colin Walters
2a0395d63b Bug 648102 - Make shell REPL/snarf/run always take UTF-8 input; add JS_DecodeUTF8; add UTF-8 flag to JS_BufferIsCompilableUnit. r=gal 2011-04-16 14:11:10 -04:00
Luke Wagner
6fcaf8c63f Bug 649531 - tidy up this-computation logic a bit, add some asserts (r=waldo)
--HG--
extra : rebase_source : f01409526e4582b87ced4b9f9d1170254a55373b
2011-04-12 17:16:12 -07:00
David Anderson
61cc68f032 Fix clang warnings (bug 647280, r=luke). 2011-04-14 13:45:06 -07:00
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
67af97e094 Bug 656462, part 3 - Syntactic touchups (r=waldo)
--HG--
extra : rebase_source : 7a81c352a96b9e23fc8f7bee5cb1d095c5cdb998
2011-05-24 16:08:40 -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
Phil Ringnalda
8d4385b7fe Back out bd821ea0ad41 (638324) for mochitest-chrome crashes 2011-03-31 19:55:10 -07:00
Andreas Gal
e69500d1bc Maintain a list of IdArrays as we hand them out via JS API (638324, r=brendan). 2011-03-31 14:42:33 -07:00
Brian Hackett
74bba0be53 [INFER] Inline scripted calls, bug 639099. 2011-03-26 19:07:13 -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
Paul Biggar
72c7701093 Bug 634155: Account for NewCompartment's memory, and change allocation APIs (r=nnethercote)
This changes the allocation API, in the following way:

  js_malloc -> {cx->,rt->,OffTheBooks::}malloc
  js_calloc -> {cx->,rt->,OffTheBooks::}calloc
  js_realloc -> {cx->,rt->,OffTheBooks::}realloc
  js_free -> {cx->,rt->,Foreground::,UnwantedForeground::}free
  js_new -> {cx->,rt->,OffTheBooks::}new_
  js_new_array -> {cx->,rt->,OffTheBooks::}new_array
  js_delete -> {cx->,rt->,Foreground::,UnwantedForeground::}delete_

This is to move as many allocations as possible through a JSContext (so that they may be aken into account by gcMallocBytes) and to move as many deallocations to the background as possible (except on error paths).
2011-03-31 01:13:49 -07:00
David Mandelin
04e76bd7d7 Bug 660371: report regexp syntax errors as compiler errors when appropriate, r=cdleary 2011-06-27 18:53:26 -07:00
Jeff Walden
1a51bb7cb1 Bug 645922 - Remove nsIJSON.encode/decode, because their functionality is subsumed by JSON.parse and JSON.stringify, and their idiosyncrasies are hindering code improvements. Also remove js_TryJSON and JS_TryJSON, which are no longer used after these changes and have no clear use cases. r=brendan, r=jst 2011-03-28 19:27:15 -07:00
Jeff Walden
0a61156473 Bug 665835 - Remove JSOPTION_ANONFUNFIX. r=cdleary
--HG--
rename : js/src/tests/js1_5/extensions/regress-376052.js => js/src/tests/ecma_5/misc/unnamed-function.js
2011-06-21 09:53:19 -07:00
Luke Wagner
0319982d42 Bug 665247 - Remove unused metering code (r=igor)
--HG--
extra : rebase_source : 78ec31e4236f63f8a91024f34b1b99a889dc47f5
2011-06-21 10:26:22 -07:00
Nicholas Nethercote
a208fd35a9 Bug 661068 - Create TraceMonitors lazily. r=luke. 2011-06-21 12:47:04 +10:00
Gregor Wagner
08eca5db6e Bug 656120 - Change MaybeGC trigger. r=igor 2011-06-20 14:44:26 -07:00
Luke Wagner
de6d0e2330 Bug 665189 - hoist JSString and family into vm/String{.h, -inl.h, .cpp} (r=njn) 2011-06-20 11:44:20 -07:00
Igor Bukanov
973ee9f2df bug 664677 - initializing number and script state when creating the runtime. r=anygregor
--HG--
extra : rebase_source : 7e16c8649723bb67205343c0c7cf230e7e04a8c0
2011-06-16 11:42:35 +02:00
Brian Hackett
d737bb3ddb Merge TM -> JM 2011-03-22 18:07:31 -07:00
Jeff Walden
d3676c4409 Bug 649819 - Remove JS_BeginJSONParse/JS_ConsumeJSONText/JS_EndJSONParse now that these APIs are no longer used and the cleaner API is available and works. r=brendan 2011-03-21 11:42:14 -07:00
Luke Wagner
774c050740 Bug 602994 - Preparatory syntactic cleanup (r=waldo) 2011-04-08 10:52:48 -07:00
Chris Leary
2ef1aa6439 Bug 642274: Add loose equality to JSAPI. (r=Waldo)
--HG--
extra : rebase_source : 3001604e6e6bfc9c8e73aafc1498a71ae7ade9cd
2011-03-21 10:04:43 -07:00
Andreas Gal
707f928b25 Expose public APIs for converting doubles to signed/unsigned int per ECMA spec (bug 631132, r=bzbarsky). 2011-03-29 19:19:15 -07:00
Brian Hackett
f9a4f63af8 [INFER] Fast path for object equality, track equality hooks in type objects, bug 619592. 2011-03-19 16:53:07 -07:00
Rob Arnold
1fa00902b6 Bug 651510 - "Signature for JS_StructuredClone differs in jsapi.h and jsapi.cpp" [r=jorendorff] 2011-04-20 08:28:00 -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
Brian Hackett
40f76095d8 [INFER] Don't bootstrap the __proto__ of the global or Function.prototype if their __proto__ has mutated, bug 642206. 2011-03-17 10:48:02 -07:00
Brian Hackett
6e8d1fb68d [INFER] Spot fix for shapes not being marked when a child is held by AutoShapeRooter, bug 642209. 2011-03-16 18:24:20 -07:00
Brian Hackett
7469fa7a3a [INFER] Don't share shapes between objects with different types, bug 620599. 2011-03-16 10:02:19 -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
Luke Wagner
fee4a41733 Bug 616562 - speed up JSString::isStatic (r=njn)
--HG--
extra : rebase_source : 9f0b553b8ab54bfbbd5290ba936581bda8bb40ec
2011-03-14 13:55:55 -07:00
Brian Hackett
25bc5395d9 [INFER] Fix call IC monitoring for speculated Function.prototype.call, bug 621942. 2011-03-12 22:33:11 -08:00
Brian Hackett
300a849c3e [INFER] Use PICs on monitored SETNAME and SETPROP, bug 621937. 2011-03-11 16:29:38 -08:00
Brian Hackett
d639ada378 Merge TM -> JM 2011-03-09 09:58:49 -08:00
Andreas Gal
e787b97701 Sweep compartments when no objects live in them (bug 639270, r=gregor). 2011-03-08 20:58:38 -08:00
Phil Ringnalda
d21d12b55b Back out 80d8431f209e (bug 639270) for failing to actually compile 2011-03-08 19:59:30 -08:00
Andreas Gal
033fce6c39 Sweep compartments when no objects live in them (bug 639270, r=gregor). 2011-03-08 18:10:47 -08:00
Nicholas Nethercote
155ec564ef Bug 638034 - Make scanning safer. r=brendan. 2011-03-08 16:10:51 -08:00
Brian Hackett
666b5642e8 [INFER] Turn inference on by default, fold JS_DefinePropertyWithType into JS_DefineProperty, bug 619693. 2011-03-06 22:57:13 -08:00
Brian Hackett
30270553a5 [INFER] Handle repeated calls to js_InitFunctionAndObjectClasses, bug 638981. 2011-03-04 17:45:11 -08:00
Andreas Gal
29c7365b34 Make empty shape initialization lazy (bug 639254, r=billm). 2011-03-07 18:42:04 -08:00
Brian Hackett
41091b1bb6 [INFER] Fix OOM handling in type inference, convert inference to runtime option, bug 637674. 2011-03-03 14:07:48 -08:00
Brian Hackett
e5020a35b3 [INFER] Condense type information during GC, bug 613221. 2011-03-01 13:10:05 -08:00
Brian Hackett
0a2cdd3c56 Merge TM -> JM 2011-02-25 18:21:43 +13:00
Jeff Walden
ff7d62dfcb Bug 637905 - Add (asserted-infallible) append methods to js::Vector, for use when the vector in question has previously had space reserved, and use them a bunch of places. r=luke
--HG--
extra : rebase_source : 89002f1cb5160d89e90a22e54bdca1d57bf9deda
2011-02-18 18:32:29 -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
Andreas Gal
9a7cc712a8 When idle the GC holds on to unused chunks indefinitely (bug 631733, r=brendan, a=blocker). (relanding in a CLOSED TREE) 2011-02-19 22:59:49 -08:00
Jeff Walden
b80782b484 Bug 643532 - Implement JS_ParseJSON and JS_ParseJSONWithReviver, a first step toward moving away from a begin-consume-finish-based JSON parsing process. r=luke 2011-03-21 11:42:06 -07: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
faec8b99c2 When idle the GC holds on to unused chunks indefinitely (bug 631733, r=brendan, a=blocker). 2011-02-19 22:59:49 -08:00
Jeff Walden
7ce51759aa Backed out changeset 4d86e63ff60d, diagnostic patch; back out 3da12edf735e, followup fix; back out bug 631135 completely, unexplained intermittent orange.
--HG--
extra : rebase_source : e2e56a78bc0eea0d6e005bc976c74b33d8c22281
2011-02-19 19:50:19 -08:00
Andreas Gal
f5b9aeb7d0 Remove obsolete JSMarkOp API (bug 638291, r=jorendorff). 2011-03-05 14:50:11 -08:00
Jeff Walden
e604ceddc7 Bug 631135 - Objects created by or on behalf of fast natives and property ops (getters or setters) are parented to the wrong proto and global. r=lw,jst,mrbkap,bz, a=jst 2011-02-08 17:20:06 -08:00
Jan de Mooij
f1c8050e59 Bug 633741 - Check result of defineProperty in js_InitFunctionAndObjectClasses. r=jwalden, a=dmandelin
--HG--
extra : rebase_source : 25e7e6dce22a5f5eb57a7954bcc39415050b5595
2011-02-17 14:17:24 -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
Andreas Gal
5a206a522e Xray wrappers don't cache resolved native properties on the holder object (bug 633382, r=mrbkap/jst, a=blocker). 2011-02-15 19:00:55 -08: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
d4edb54e54 Bug 632358 - Only call resetCompartment() when safe to GC (r=waldo)
--HG--
extra : rebase_source : 77127374d754a5a39695bb3c7dac95275616a150
2011-02-11 16:13:08 -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
Igor Bukanov
f4c246e790 bug 627016 - remove JSProperty out param from DefineNativeProperty. r=jorendorff
--HG--
extra : rebase_source : 673c7471fc963cb59d11ab667bd9e8523297617a
2011-01-21 14:10:16 +01:00
Mike Hommey
2ec52f1e18 Backed out changeset d4c0875dc41a -- tinderbox build bustage 2011-03-21 18:31:02 +01:00
Chris Leary
1ef870e8d1 Bug 642274: Add loose equality to JSAPI. (r=Waldo) 2011-03-21 10:04:43 -07:00
Igor Bukanov
6990aee491 Bug 633219 - replacing resolve hashtable with a linked list. r=luke 2011-03-07 23:00:00 +01:00
Luke Wagner
0db79e7ad5 Bug 640274 - rm {JS_,js_,}GetExternalStringGCType (r=brendan)
--HG--
extra : rebase_source : 1a2b1df8c7ed9cdbf0455e6e8c117382cb1fb2bb
2011-03-14 13:55:43 -07:00
Jeff Walden
2db290c32a Bug 638312 - Add JS_IsBuiltinEvalFunction and JS_IsBuiltinFunctionConstructor APIs. r=gal 2011-03-02 19:57:44 -08:00
Brian Hackett
b5bb63ceba [INFER] Decouple type sets computed by inference from analysis information, store in new TypeScript struct, bug 621301. 2010-12-28 14:53:50 -05:00
Brian Hackett
5b9156630b [INFER] Inherit shadowed properties correctly after splicePrototype, bug 621126. 2010-12-23 17:54:03 -05:00
Brian Hackett
1024e522d2 [INFER] Handle reparenting of non-compileAndGo scripts, bug 620599. 2010-12-22 14:46:42 -08:00
Brian Hackett
f3bd6ce93f [INFER] Fixes for jstests, bug 620599, part 1. 2010-12-21 07:32:21 -08:00
Brian Hackett
637c0ef693 [INFER] Fixes for botched merge. 2010-12-20 12:10:57 -08:00
Brian Hackett
5c9d6cbdb0 [INFER] Account for 'new' case in non-constructor type handlers, bug 618853. 2010-12-20 10:13:39 -08:00
Brian Hackett
89bb1d08e8 Merge TM -> JM 2010-12-20 09:06:43 -08:00