Commit Graph

809 Commits

Author SHA1 Message Date
Jon Coppeard
433a1060f6 Bug 650161 - Implement compacting GC for JSObjects r=terrence 2014-08-14 11:52:24 +01:00
Jon Coppeard
7e5aae13e9 Bug 650161 - Update pointers to relocated objects r=terrence 2012-06-05 11:47:42 -07:00
Jon Coppeard
88198618da Bug 1052422 - Remove trivial shim functions that call into the GC r=sfink 2014-08-14 10:32:06 +01:00
Jim Blandy
b39e51b735 Bug 961326: Give SpiderMonkey an API that embeddings can use to safely construct values for Debugger clients. r=jorendorff 2014-08-14 16:33:21 -07:00
Jim Blandy
140805033c Bug 1051115: Let users tell ubi::Edge not to provide edge names, as they're expensive to compute, and not everyone needs them. r=terrence 2014-08-14 15:59:59 -07:00
Ed Morley
28007bed9c Backed out changeset dc66d16f19c8 (bug 1052422) for hazard analysis failures 2014-08-14 13:38:51 +01:00
Ed Morley
1b0adcea11 Backed out changeset 3adf62f886d9 (bug 650161) 2014-08-14 12:52:41 +01:00
Ed Morley
ffff7b0770 Backed out changeset edc768336c80 (bug 650161) 2014-08-14 12:52:34 +01:00
Jon Coppeard
01b56566aa Bug 650161 - Implement compacting GC for JSObjects r=terrence 2014-08-14 11:52:24 +01:00
Jon Coppeard
5b1c8897ed Bug 650161 - Update pointers to relocated objects r=terrence 2012-06-05 11:47:42 -07:00
Jon Coppeard
5a19c6c4f0 Bug 1052422 - Remove trivial shim functions that call into the GC r=sfink 2014-08-14 10:32:06 +01:00
Ehsan Akhgari
e78b481c3a Bug 1044596 - Fix more bad implicit conversion constructors in the JS engine; r=jorendorff 2014-07-27 13:40:52 -04:00
Jon Coppeard
511f6ef1c5 Bug 1052388 - Rename JS_CallHeapFooTracer() functions to JS_CallFooTracer() r=terrence r=smaug 2014-08-13 10:05:22 +01:00
Terrence Cole
a6741673cf Bug 1033442 - Remove non-pod calloc from MallocProvider and AllocPolicy; r=jonco 2014-08-05 14:06:35 -07:00
Jim Blandy
474f4425e3 Bug 1012456: Implement Debugger.Memory.prototype.census, with trivial categorization (none, just counting). r=terrence 2014-08-11 12:46:39 -07:00
Jim Blandy
3ecc8b3e0b Bug 1003302: Implement ubi::Node::compartment. r=terrence 2014-08-11 12:46:39 -07:00
Nicholas Nethercote
609079cb43 Bug 1043605 - Fix up DEBUG/JS_DEBUG confusion in HashTable.h. r=jwalden.
--HG--
extra : rebase_source : ae56e815766be675083596e177844e2365e93906
2014-08-10 23:17:44 -07:00
Terrence Cole
3718c92afc Bug 1047120 - PurpleBuffer doesn't actually need to use Heap<T>; r=mccr8,jonco 2014-07-31 14:43:45 -07:00
Ryan VanderMeulen
b59183f1cc Merge m-c to inbound. a=merge
CLOSED TREE
2014-08-06 16:50:19 -04:00
Terrence Cole
260506a9ca Bug 1046945 - Move ExposeGCThingToActiveJS to js::gc:: and use the typed wrappers instead; r=jonco
--HG--
extra : rebase_source : 99d98ed9351f563ed3b6eb18ad67d2f3ae736df4
2014-07-31 12:14:17 -07:00
Victor Porof
ecac4bb9d0 Bug 879008 - New UI for the sampling Profiler, r=rcampbell,fitzgen,pbrosset 2014-08-06 11:25:18 -04:00
Jim Blandy
1b479f0f20 Bug 1038544: Implement ubi::Node::zone, to return the JS::Zone to which the node's referent belongs. r=terrence 2014-07-31 17:29:40 -07:00
Wes Kocher
edf6b12068 Backed out changeset 61a25c10da62 (bug 1038544) for build failures 2014-07-31 14:40:16 -07:00
Jim Blandy
8bb6861710 Bug 1038544: Implement ubi::Node::zone, to return the JS::Zone to which the node's referent belongs. r=terrence 2014-07-31 13:50:10 -07:00
Terrence Cole
c410ae17c7 Bug 1045940 - Rename needsBarrier to needsIncrementalBarrier; r=jonco 2014-07-28 10:16:56 -07:00
Jim Blandy
a3de3d6a60 Bug 1038316: Add support for ES6 Symbols to ubi::Node. r=sfink 2014-07-30 17:14:19 -07:00
Jim Blandy
023482c98b Bug 1045900: Move the declaration of INTERNED_STRING_TO_JSID from js/src/jsapi.h to js/public/Id.h. r=jwalden 2014-07-30 08:37:03 -07:00
Tom Schuster
901e429fff Bug 1045584 - Remove everything relating to frames from OldDebugAPI. r=jandem,bholley 2014-07-30 14:26:46 +02:00
Terrence Cole
8d0192ae1b Bug 1045181 - Miscellaneous small cleanups in js::gc; r=jonco 2014-07-29 10:47:43 -07:00
Luke Wagner
0accc7e372 Bug 1040390 - Integrate JS::ProfilingFrameIterator with the profiler (r=bgirard)
--HG--
extra : rebase_source : 7f9a022fb16a353d22242f60cfae4e5659798752
2014-07-29 09:56:22 -05:00
Luke Wagner
178eac00ed Bug 1040390 - Replace ad hoc methods with JS::ProfilingFrameIterator::label() (r=dougc)
--HG--
extra : rebase_source : 396c7925edac39e39d16dea7a53da3ba34f68ddf
2014-07-29 09:56:21 -05:00
Luke Wagner
2bc805386c Bug 1040390 - Add JS::ProfilingFrameIterator::stackAddress (r=dougc)
--HG--
extra : rebase_source : a5f1823e8e9fb96aeb2813ce5105dc9096a054d7
2014-07-29 09:56:21 -05:00
Jon Coppeard
c71e29bdb6 Bug 1043888 - Make GetObjetZone() work on nursery objects and rename GetGCThingZone() to GetTenuredGCThingZone() r=terrence 2014-07-28 10:39:36 +01:00
Tom Schuster
e8621763d5 Bug 1043588 - Remove some unused functions from OldDebugAPI. r=jimb 2014-07-25 14:26:40 +02:00
Tom Schuster
f74881d526 Bug 1031878 - Remove JS_SetWatchPoint and friends. r=jimb 2014-07-25 14:26:40 +02:00
Tom Schuster
55129cf4f1 Bug 1043577 - Remove PropertyDescArray stuff. r=jimb 2014-07-25 14:26:40 +02:00
Tom Schuster
1bc16cea39 Bug 1043578 - Remove JS_SetDebuggerHandler and friends. r=jimb 2014-07-25 14:26:40 +02:00
Tom Schuster
caaba7d772 Bug 1031876 - Remove JS_SetTrap and friends. r=jimb 2014-07-25 14:26:39 +02:00
Jan de Mooij
9dd0f57269 Bug 1031529 part 2 - Remove JS_THREADSAFE #ifdefs everywhere. r=bhackett 2014-07-24 11:56:43 +02:00
Nick Fitzgerald
87b69e2b9e Bug 993085 - Part 1: Add the Debugger.Memory.prototype.trackingAllocationSites accessor property r=jimb 2014-07-21 18:16:13 -07:00
Luke Wagner
870604424c Bug 1027885 - OdinMonkey: properly represent calls to builtin functions in the profiling stack (r=dougc) 2014-07-21 11:05:44 -05:00
Luke Wagner
94653a66ca Bug 1027885 - OdinMonkey: maintain AsmJSActivation::fp in all frames in profiling mode (r=dougc) 2014-07-21 10:58:12 -05:00
Jim Blandy
0781fc5cfb Bug 1031881: Remove unused elements of JSDebugHooks, and their supporting code. r=sfink 2014-07-19 18:07:05 -07:00
Tom Schuster
c25e1b9944 Bug 1036136 - Implement structured cloning for Map and Set objects. r=jorendorff,bent 2014-07-19 23:44:53 +02:00
Bill McCloskey
8c67fcff35 Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-06-17 11:20:33 -07:00
Nicholas Nethercote
256a1f168b Bug 1038601 - Shrink js::HashTable. r=luke.
This patch reduces sizeof(js::HashTable):
- On 64-bit: from 32 bytes to 24 bytes.
- On 32-bit: from 24 bytes to 16 bytes.

The latter is particularly nice because jemalloc rounds up allocation requests
of 24 bytes to 32, but it can allocate 16 bytes without slop, so we're saving
16 bytes per heap-allocated HashTable.

This is done by:
- Shrinking |removedCount| and |hashShift|.
- Reordering the fields.
- Not defining |mutationCount| and |mEntered| in non-DEBUG builds rather than
  using DebugOnly<> -- in non-DEBUG builds, DebugOnly<> fields take up 1 byte
  each.

This change saves over 55 KiB when starting Firefox and loading Gmail.

The patch also uses uint32_t more consistently for the generation.

--HG--
extra : rebase_source : 8bdfbfe40f233711433bd9b7a2b5a19d69beacc7
2014-07-16 16:51:09 -07:00
Jan de Mooij
6675f63031 Bug 1037886 - Report Latin1 and TwoByte strings separately in about:memory. r=njn 2014-07-16 19:11:50 +02:00
Jon Coppeard
e02ddd1af3 Bug 1038274 - Really fix previous problem with landing r=me 2014-07-16 12:04:33 +01:00
Jon Coppeard
2ed8ff7bfc Bug 1038274 - Add max heap size constants to pass to JS_NewRuntime() r=terrence 2014-07-16 10:01:20 +01:00
Jon Coppeard
0136e9a714 Backed out changeset 5290e42e8345 (bug 1038274) for disabling GC malloc trigger 2014-07-16 11:34:49 +01:00