Commit Graph

172 Commits

Author SHA1 Message Date
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
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
Bill McCloskey
0f733168cb Bug 569422 - Allocate js::Shape from the GC heap (r=brendan) 2011-03-23 11:57:44 -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
Andreas Gal
29c7365b34 Make empty shape initialization lazy (bug 639254, r=billm). 2011-03-07 18:42:04 -08:00
Andreas Gal
751570828f Mark watch points after the main GC phase (bug 639235, r=jorendorff). 2011-03-07 16:56:17 -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
Nicholas Nethercote
f9df6712be Bug 631139 - Put Shape::numSearches and Shape::table in a union. r=brendan, a=sayrer. 2011-02-09 15:18:03 -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
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
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
Gregor Wagner
cbc0a9cb10 Enable per-compartment garbage collection (bug 605662, r=gal). 2011-01-07 23:44:57 -08:00
Nicholas Nethercote
42704598e2 Bug 610070 - Large amount of heap allocation from js::PropertyTable::init. r=brendan. 2011-01-03 17:14:55 -08: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
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
0ce50fbcc8 Backed out changeset e5e50e5a2816 -- done with diagnostic 2010-12-29 17:47:42 -08:00
David Mandelin
26b39ddcb7 Bug 595975: diagnostic patch to collect Shape contents, r=billm, a=blocker 2010-12-27 17:36:03 -08:00
Brendan Eich
a611a4a1d3 bz/brendan patch to hash function-local shapes in dictionary mode due to too many locals (610370, r=brendan/bz). 2010-11-19 15:53:55 -08: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
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
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
Brendan Eich
54fd156cb3 PropertyTable::{init,change} should use js_calloc/js_free, and JSObject::addPropertyInternal should report OOM on change failure (606880, r=anygregor). 2010-10-24 19:24:53 -07:00
Jason Orendorff
596862d852 Remove JSObject::title. Bug 606029, r=igor. 2010-10-22 19:04:22 -05:00
Jason Orendorff
5665c4ce1c Avoid MSVC mumbo-jumbo in static assertion. Following up on suggestions in bug 604276 comment 6 and bug 598055 comment 1. no_r=me.
--HG--
extra : rebase_source : 313d2b0dba84c9417ab7e2691d6f9c43c52c5a06
2010-10-15 09:31:07 -05:00
Jason Orendorff
7062d1174d Silence the few noisiest MSVC warnings. Bug 604276, r=luke.
--HG--
extra : rebase_source : 10874d0c67e080a7143c5a57066a3fd3db6209cb
2010-10-14 18:47:24 -05:00
Igor Bukanov
b8792e95c1 bug 597736 - fixing TreeFragment leak. r=gal 2010-09-21 14:58:19 +02: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
Brendan Eich
ccc80abca5 Fix screwed up layering of GC marking for JSObject::emptyShape (596103, r=jorendorff). 2010-09-14 12:13:12 -07:00
Brendan Eich
6ba6389297 Rename freeslot appropriately (593256 separated cosmetics-only patch, r=jorendorff). 2010-09-03 11:05:43 -07:00
Brendan Eich
d7abc9c150 Eliminate JSObject::freeslot via monotonic lastProp->freeslot (592556, r=jorendorff,dvander). 2010-09-02 14:50:44 -07:00
Brendan Eich
b15d952f7c Bug 535629 - Deleted properties' slots are not recycled (r=gal).
--HG--
extra : rebase_source : 04a8bbd6731e4e9b9d36a5d685c5ee0f87db064e
2010-08-18 11:34:13 -07:00
Brendan Eich
790ddc9e99 Merge JSScope into JSObject and JSScopeProperty (now js::Shape; bug 558451, r=jorendorff). 2010-08-29 11:57:08 -07:00
Brendan Eich
3705041036 Determine whether to shadow a property based on slotful *or* has JSPropertyOp setter (552432, r=jorendorff). 2010-12-13 18:10:39 -08:00
Nicholas Nethercote
1f1fbee591 Backed out changeset 0343557b0c7a due to orange. 2010-12-13 18:43:11 -08:00
Nicholas Nethercote
225d4f7e2d Bug 610070 - Large amount of heap allocation from js::PropertyTable::init. r=brendan. 2010-12-13 16:43:39 -08:00
Chris Leary
e0ace5bc86 Bug 564953: Port YARR! Lands macroassembler. (r=gal) 2010-08-11 13:30:07 -07:00
Robert Sayre
250c59eece Reland: Bug 577648 - arguments.callee.caller does not work in FF 4 under certain circumstances. 2010-08-01 09:58:03 -07:00
Robert Sayre
9bae5e1079 Backout changeset 80382d88b92c. (Bug 577648 - arguments.callee.caller does not work in FF 4 under certain circumstances). The patch is righteous, but MSVC's behavior with a mere 3GB of addressable memory is not. Will reland soon. 2010-07-31 14:01:26 -07:00