searching for reviewer(sfink)
1a0b7f5e0282052c0bd67a98143cdcd2c4cb39fa: Bug 1500215 - PID suffix ION_SPEW_FILENAME for logs in multiprocess context r=sfink
Matthew Gaudet <mgaudet@mozilla.com> - Wed, 24 Oct 2018 14:31:55 +0000 - rev 491158
Push 247 by fmarier@mozilla.com at Sat, 27 Oct 2018 01:06:44 +0000
Bug 1500215 - PID suffix ION_SPEW_FILENAME for logs in multiprocess context r=sfink Differential Revision: https://phabricator.services.mozilla.com/D9133
8ff4dac9916d9bd908611963de3ec8883befea5f: Bug 1448880 - Part 7: Fix hasAnyLiveHooks to include onStep handlers on suspended frames. r=sfink
Jason Orendorff <jorendorff@mozilla.com> - Wed, 24 Oct 2018 01:08:19 +0000 - rev 491043
Push 247 by fmarier@mozilla.com at Sat, 27 Oct 2018 01:06:44 +0000
Bug 1448880 - Part 7: Fix hasAnyLiveHooks to include onStep handlers on suspended frames. r=sfink Depends on D6988 Differential Revision: https://phabricator.services.mozilla.com/D6990
3a58f94c3f5ad656c0c96abf87d0522c3066690e: Bug 1499277 - Remove unnecessary SCInput::readNativeEndian; fix SCInput::readPtr on big endian systems. r=sfink
A. Wilcox <AWilcox@Wilcox-Tech.com> - Tue, 16 Oct 2018 05:43:43 +0000 - rev 490040
Push 247 by fmarier@mozilla.com at Sat, 27 Oct 2018 01:06:44 +0000
Bug 1499277 - Remove unnecessary SCInput::readNativeEndian; fix SCInput::readPtr on big endian systems. r=sfink
e1f69bad9ab0d850d7fc9804321fac80a8a4a8ed: Bug 1498177 - Use size_t for integer values particularly for comparisons r=sfink
Paul Bone <pbone@mozilla.com> - Fri, 12 Oct 2018 20:17:58 +1100 - rev 489661
Push 247 by fmarier@mozilla.com at Sat, 27 Oct 2018 01:06:44 +0000
Bug 1498177 - Use size_t for integer values particularly for comparisons r=sfink These values were compared as floats, where there was no sagnificant difference and the assertion failed.
f8b19c4105d2e0e78a5a2ffd8843c93c12af5c79: Bug 1489477 - Stop modules from entraining the top-level JSScript r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 11 Oct 2018 18:33:57 +0100 - rev 489028
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1489477 - Stop modules from entraining the top-level JSScript r=sfink
71160e8bcfb743129388fa3d3948a8d036263785: Bug 1496362 - Limit control of tracelogger to only the gecko profiler and the previous environment variables implementation that triggers tracelogger only on startup. r=sfink
Denis Palmeiro <dpalmeiro@mozilla.com> - Wed, 10 Oct 2018 18:36:53 +0000 - rev 488949
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1496362 - Limit control of tracelogger to only the gecko profiler and the previous environment variables implementation that triggers tracelogger only on startup. r=sfink Tracelogger is currently not setup to be toggled on and off while in the shell. Removing access to the "jit.enable-tracelogger" will force the tracelogger to be invoked either through the new tracelogger API which is intended to be used by the profiler, or through setting the environment variables TLDIR, TLOPTIONS, and TLLOG. Differential Revision: https://phabricator.services.mozilla.com/D8250
6dd61044e50ab89772a49adc1c8f020d1d32d1ec: Bug 1496699 - Refactor gcparam.js test r=sfink
Paul Bone <pbone@mozilla.com> - Thu, 11 Oct 2018 10:44:11 +1100 - rev 488926
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1496699 - Refactor gcparam.js test r=sfink
2398cc611aba734f6de7000d3429f40efb0517eb: Bug 1496699 - Use size_t for memory sizes r=sfink
Paul Bone <pbone@mozilla.com> - Thu, 04 Oct 2018 19:13:49 +1000 - rev 488925
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1496699 - Use size_t for memory sizes r=sfink Some of these values were uint64_t which would not have made sense on 32bit systems.
5aee88f016b05ac1a2239f46db3207af42f45199: Bug 1496699 - Convert some doubles to floats r=sfink
Paul Bone <pbone@mozilla.com> - Thu, 04 Oct 2018 19:13:20 +1000 - rev 488924
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1496699 - Convert some doubles to floats r=sfink The tuning parameters (usually percentages) are approximate anyway, doubles are overkill.
3fafffb5ace29b9a357f264d4a821348d540ec36: Bug 1497676 - Drop defunct MOZ_B2G ifdef. r=sfink
Kartikaya Gupta <kgupta@mozilla.com> - Tue, 09 Oct 2018 21:11:56 +0000 - rev 488761
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1497676 - Drop defunct MOZ_B2G ifdef. r=sfink Differential Revision: https://phabricator.services.mozilla.com/D8148
741a43f63ec42206b3bf86a33d30b1cd9d449aa3: Bug 1496868 - Make assertThrowsValue and assertThrowsInstanceOf overridable. r=sfink
Christian Holler <choller@mozilla.com> - Mon, 08 Oct 2018 16:05:37 +0000 - rev 488427
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1496868 - Make assertThrowsValue and assertThrowsInstanceOf overridable. r=sfink Differential Revision: https://phabricator.services.mozilla.com/D7952
0dcf343133e9c8339c2d1d989f3d2c7f2a243f53: Bug 1496402 - ConstraintTypeSet::trace: Rehash HashTypeSet in-place after tracing. r=sfink
Nicolas B. Pierron <nicolas.b.pierron@nbp.name> - Thu, 04 Oct 2018 14:56:57 +0200 - rev 488390
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1496402 - ConstraintTypeSet::trace: Rehash HashTypeSet in-place after tracing. r=sfink
9d5e7b73af8f2576a76a1014b392fc4258c2683e: Bug 1480104: Provide an API for the gecko profiler, introduce a string hash table to remove duplicate data, and add necessary locks and changes to support the profiler start/stop routines r=sfink
Denis Palmeiro <dpalmeiro@mozilla.com> - Sun, 30 Sep 2018 17:39:10 +0000 - rev 487409
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1480104: Provide an API for the gecko profiler, introduce a string hash table to remove duplicate data, and add necessary locks and changes to support the profiler start/stop routines r=sfink There are a number of changes involved here which I'll try to summarize below: 1. Provide API calls to start & stop the tracelogger. These will enable and disable a set of events to trace. 2. Provide API calls to reset the tracelogger. This will empty the data structures used by the trace logger so that a new tracing session can occur without previous data corrupting it. 3. Provide API calls to write out the trace logger data in JSON. This will write out an array of strings which acts as the trace logger event dictionary, and an array of events with timestamps. 4. Implement a new way of storing the event strings. Previously, all strings were saved in the format "script:line:column". However, this led to a lot of duplication because many events would use the same script at different locations. Instead, we now save only the script string into a vector, and then hash it and save that into a table for reuse. The line and column will be saved as part of the text id payloads. Overall, this saves us about 100-150 MB of data for about a 10 second trace. 5. Add some necessary locks for when the gecko profiler calls some of the API routines from another thread. Differential Revision: https://phabricator.services.mozilla.com/D5219
6568853848ac62384a094e521965e101978b1f62: Bug 1495601 - Do not raise error if jstests.py is executed without virtualenv on non-automation. r=sfink
Tooru Fujisawa <arai_a@mac.com> - Tue, 02 Oct 2018 11:28:43 +0900 - rev 487369
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1495601 - Do not raise error if jstests.py is executed without virtualenv on non-automation. r=sfink
2a668be15af5d294cbd9db17fdd6f6cb89f74561: Bug 1494389 - tweak TraceLogging's no-op rdtsc function for non-x86 MSVC; r=sfink
Nathan Froyd <froydnj@mozilla.com> - Wed, 26 Sep 2018 14:49:51 -0400 - rev 486651
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1494389 - tweak TraceLogging's no-op rdtsc function for non-x86 MSVC; r=sfink GCC/clang are happy with the current formulation, but MSVC would like something slightly different, closer to what we use for the x86-ish version.
92cde451be94e8872abb9068da5d89197bd3e925: Bug 1444013 - End the slice if nursery collection took too long r=sfink
Paul Bone <pbone@mozilla.com> - Tue, 25 Sep 2018 15:02:13 +1000 - rev 486576
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1444013 - End the slice if nursery collection took too long r=sfink
eae95de0eabec99b772fd01ac873880cc96425d9: Bug 1480104: Provide an API for the gecko profiler, introduce a string hash table to remove duplicate data, and add necessary locks and changes to support the profiler start/stop routines r=sfink
Denis Palmeiro <dpalmeiro@mozilla.com> - Sun, 23 Sep 2018 21:51:44 +0000 - rev 486398
Push 246 by fmarier@mozilla.com at Sat, 13 Oct 2018 00:15:40 +0000
Bug 1480104: Provide an API for the gecko profiler, introduce a string hash table to remove duplicate data, and add necessary locks and changes to support the profiler start/stop routines r=sfink There are a number of changes involved here which I'll try to summarize below: 1. Provide API calls to start & stop the tracelogger. These will enable and disable a set of events to trace. 2. Provide API calls to reset the tracelogger. This will empty the data structures used by the trace logger so that a new tracing session can occur without previous data corrupting it. 3. Provide API calls to write out the trace logger data in JSON. This will write out an array of strings which acts as the trace logger event dictionary, and an array of events with timestamps. 4. Implement a new way of storing the event strings. Previously, all strings were saved in the format "script:line:column". However, this led to a lot of duplication because many events would use the same script at different locations. Instead, we now save only the script string into a vector, and then hash it and save that into a table for reuse. The line and column will be saved as part of the text id payloads. Overall, this saves us about 100-150 MB of data for about a 10 second trace. 5. Add some necessary locks for when the gecko profiler calls some of the API routines from another thread. Differential Revision: https://phabricator.services.mozilla.com/D5219
1dd9fc971b3c5f30a5ad5b92d64957163e14c041: Bug 1490948: Set the LLVM_CONFIG environment variable when building the Spidermonkey hazard builds; r=sfink
Benjamin Bouvier <benj@benj.me> - Thu, 13 Sep 2018 12:03:07 +0200 - rev 485950
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1490948: Set the LLVM_CONFIG environment variable when building the Spidermonkey hazard builds; r=sfink This is needed so that rust-bindgen can be used in this environment.
9d57ac1bef3af5233c631ad2ba9bee323680d04f: Bug 1490948: Don't set RUST_TARGET to 0 in autospider; r=sfink
Benjamin Bouvier <benj@benj.me> - Thu, 13 Sep 2018 12:02:05 +0200 - rev 485949
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1490948: Don't set RUST_TARGET to 0 in autospider; r=sfink This argument is passed as rustc's --target, and it's obviously not a valid target. It seems there was a good reason to set it as is, but it vanished over time and the hack remained. This patch gets rids of it.
aa3c5d257b1e8ddda72905e728d72d4d57762b7e: Bug 1490042 - Only allow a single AutoClearTypeInferenceStateOnOOM to be active at once r=jandem r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 13 Sep 2018 16:46:51 +0100 - rev 484489
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1490042 - Only allow a single AutoClearTypeInferenceStateOnOOM to be active at once r=jandem r=sfink
3673bb1b3e56094495065a8aa661d297dd77ba2b: Bug 1489510: Add check for null in vm/TraceLoggingGraph.cpp. r=sfink
Robert Bartlensky <rbartlensky@mozilla.com> - Wed, 12 Sep 2018 09:33:49 +0000 - rev 484280
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1489510: Add check for null in vm/TraceLoggingGraph.cpp. r=sfink Coverity found that a null-pointer is passed to fseek, because the previous condition does not check for null. Differential Revision: https://phabricator.services.mozilla.com/D5268
bde61aedfb5c51a2a761037be694df136ede49cd: Bug 1488698 - Always use braces for if/for/while statements in js/src/vm, part 8. r=sfink
Jan de Mooij <jdemooij@mozilla.com> - Thu, 06 Sep 2018 11:16:59 +0200 - rev 484038
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1488698 - Always use braces for if/for/while statements in js/src/vm, part 8. r=sfink
5150b70229209c5d020eef82819f5b8d5aebda0e: Bug 1488698 - Always use braces for if/for/while statements in js/src/gc, part 4. r=sfink
Jan de Mooij <jdemooij@mozilla.com> - Thu, 06 Sep 2018 10:38:19 +0200 - rev 484027
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1488698 - Always use braces for if/for/while statements in js/src/gc, part 4. r=sfink
3ba56e06507e0c78c679261c3d0424decb3f7b29: Bug 1488698 - Always use braces for if/for/while statements in js/src/gc, part 1. r=sfink
Jan de Mooij <jdemooij@mozilla.com> - Thu, 06 Sep 2018 10:36:51 +0200 - rev 484024
Push 241 by fmarier@mozilla.com at Mon, 24 Sep 2018 21:48:02 +0000
Bug 1488698 - Always use braces for if/for/while statements in js/src/gc, part 1. r=sfink
11f6698dcc04db72ff8a6b2f2313dee30fa6f5de: Bug 1442587 - Part 4: Ban js::Vector<Value>. r=sfink
Jason Orendorff <jorendorff@mozilla.com> - Thu, 30 Aug 2018 15:30:50 -0500 - rev 483667
Push 239 by fmarier@mozilla.com at Mon, 10 Sep 2018 17:01:34 +0000
Bug 1442587 - Part 4: Ban js::Vector<Value>. r=sfink
7e7d80003930936a587312ebc3794090d5dfbb8d: Bug 1442587 - Part 4: Ban js::Vector<Value>. r=sfink
Jason Orendorff <jorendorff@mozilla.com> - Thu, 30 Aug 2018 15:30:50 -0500 - rev 483550
Push 239 by fmarier@mozilla.com at Mon, 10 Sep 2018 17:01:34 +0000
Bug 1442587 - Part 4: Ban js::Vector<Value>. r=sfink
b23f0be9191b5774fb56d71da37ad688ddaf97d2: Bug 1485460 - Byte-swap all pointers during structured clone r=sfink
Diego Pino Garcia <dpino@igalia.com> - Wed, 05 Sep 2018 07:54:00 +0300 - rev 483273
Push 239 by fmarier@mozilla.com at Mon, 10 Sep 2018 17:01:34 +0000
Bug 1485460 - Byte-swap all pointers during structured clone r=sfink
d418daa826c5c2d5a86bd823f5378adb220a3e9e: Bug 1488461 - Clean up unnecessary casting in scope tracing code r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Wed, 05 Sep 2018 11:27:40 +0100 - rev 483140
Push 239 by fmarier@mozilla.com at Mon, 10 Sep 2018 17:01:34 +0000
Bug 1488461 - Clean up unnecessary casting in scope tracing code r=sfink
e51673acfbefc500fdfc076db58fde12979ede50: Bug 1487483 - Tidy adding store buffer entries when creating an edge to a cell in the nursery r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 31 Aug 2018 12:55:31 +0100 - rev 482590
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1487483 - Tidy adding store buffer entries when creating an edge to a cell in the nursery r=sfink
fcae304349d841a9bb2850c59dcc70680b857aa7: Bug 1486782 - Remove unnecessary includes of gc/Zone.h r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 30 Aug 2018 20:10:21 +0100 - rev 482429
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1486782 - Remove unnecessary includes of gc/Zone.h r=sfink
8a2005a771b3683c6457df492cde2f90d2ed82c8: Bug 1487384 - Remove unnecessary references to Runtime::gc in GCRuntime methods r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 30 Aug 2018 17:51:53 +0100 - rev 482395
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1487384 - Remove unnecessary references to Runtime::gc in GCRuntime methods r=sfink
b7dada718ee0f14154562db052bfab83e9999a17: Bug 1486727 - Move some inline method defintions out of gc/Zone.h into new Zone-inl.h r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Wed, 29 Aug 2018 13:23:56 +0100 - rev 482167
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1486727 - Move some inline method defintions out of gc/Zone.h into new Zone-inl.h r=sfink
744b6786f4d2c5f65cac6475b18d6a113ab1ac72: Bug 1486281 - Implement js::ThisThread::GetName() on FreeBSD 11.3/12.0. r=sfink r=Build
Jan Beich <jbeich@FreeBSD.org> - Sun, 26 Aug 2018 08:13:00 +0300 - rev 481884
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1486281 - Implement js::ThisThread::GetName() on FreeBSD 11.3/12.0. r=sfink r=Build
71791e10b6e9c29fc3ff36ddee232d07961ba81d: Bug 1485031 - Use wrapper object to represent scripts in shell module APIs r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 23 Aug 2018 16:59:12 +0100 - rev 481361
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1485031 - Use wrapper object to represent scripts in shell module APIs r=sfink
40001671f508bd5673f365c47cbbdbe6c9cdbdf2: Bug 1485615 - Move internal ZoneAllocPolicy to gc/Zone.h r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 23 Aug 2018 16:59:01 +0100 - rev 481360
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1485615 - Move internal ZoneAllocPolicy to gc/Zone.h r=sfink
c70943a6b070698c59db4802c912a6c682b49ba4: Bug 1485615 - Make RegExpZone a separate allocation to Zone r=sfink
Jon Coppeard <jcoppeard@mozilla.com> - Thu, 23 Aug 2018 16:58:47 +0100 - rev 481359
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1485615 - Make RegExpZone a separate allocation to Zone r=sfink
2b2cc1983172a567ec81830d4cc530616eb2aa74: Bug 1485499 - Reduce size of js::Symbol r=sfink
Ted Campbell <tcampbell@mozilla.com> - Thu, 23 Aug 2018 01:34:37 +0000 - rev 481290
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1485499 - Reduce size of js::Symbol r=sfink MozReview-Commit-ID: 4mEHixUnUax Differential Revision: https://phabricator.services.mozilla.com/D4017
c8443454c32507d960e7a935a943f2f7412afcc6: Bug 1482560: Do not flush tracelogger to disk unless specifically requested to do so r=sfink
Denis Palmeiro <dpalmeiro@mozilla.com> - Wed, 22 Aug 2018 20:09:33 +0000 - rev 481277
Push 232 by fmarier@mozilla.com at Wed, 05 Sep 2018 20:45:54 +0000
Bug 1482560: Do not flush tracelogger to disk unless specifically requested to do so r=sfink When enabling the tracelogger, it will automatically spew the data to disk in the location specified by TLDIR or /tmp, if undefined. However, there needs to be a way to enable the tracelogger without spewing so that we can write this data as part of the gecko profiler JSON output, and ultimately visualized with perf.html. Differential Revision: https://phabricator.services.mozilla.com/D3138
66a2d0d0f6ed7ea7cc0060e3005016aeb66cc575: Bug 1483380 - Mark some test262 tests slow. r=sfink
Jason Orendorff <jorendorff@mozilla.com> - Fri, 17 Aug 2018 17:42:52 -0500 - rev 480707
Push 231 by fmarier@mozilla.com at Wed, 22 Aug 2018 00:04:13 +0000
Bug 1483380 - Mark some test262 tests slow. r=sfink
9f9bb31175a814856eeef5939196fa485ca03143: Bug 1483999 - Avoid duplicate GetBuiltinClass call. r=sfink
Tom Schuster <evilpies@gmail.com> - Sat, 18 Aug 2018 17:22:19 +0200 - rev 480610
Push 231 by fmarier@mozilla.com at Wed, 22 Aug 2018 00:04:13 +0000
Bug 1483999 - Avoid duplicate GetBuiltinClass call. r=sfink
e4d756cfe4a5938142375014e38a371f4b128250: Bug 1483999 - Use a switch for dispatching traverse functions. r=sfink
Tom Schuster <evilpies@gmail.com> - Thu, 16 Aug 2018 22:48:37 +0200 - rev 480579
Push 229 by fmarier@mozilla.com at Sun, 19 Aug 2018 02:09:13 +0000
Bug 1483999 - Use a switch for dispatching traverse functions. r=sfink
27cabd417f7828fdc75f5a19b03376733a2eeb26: Bug 1483999 - Move rooting outside of loop. r=sfink
Tom Schuster <evilpies@gmail.com> - Thu, 16 Aug 2018 21:49:45 +0200 - rev 480578
Push 229 by fmarier@mozilla.com at Sun, 19 Aug 2018 02:09:13 +0000
Bug 1483999 - Move rooting outside of loop. r=sfink
ef6a3b493405a675b56bdfed1f9480600b58ed74: bug 785922: Emit column numbers for JS frames and functions in the gecko profiler r=sfink,mstange
Denis Palmeiro <dpalmeiro@mozilla.com> - Fri, 17 Aug 2018 19:45:39 +0000 - rev 480567
Push 229 by fmarier@mozilla.com at Sun, 19 Aug 2018 02:09:13 +0000
bug 785922: Emit column numbers for JS frames and functions in the gecko profiler r=sfink,mstange Add support for column numbers when profiling JS stack frames and functions. This will help debug minified scripts when inspecting performance profiles. The column information will be emitted as a new column property that is part of the frameTable in the profile output, and will also be appended in the descriptive profiler string. Differential Revision: https://phabricator.services.mozilla.com/D3059
bb09f2ec0d284f79b4a49df1db8b455c53430be4: bug 785922: Emit column numbers for JS frames and functions in the gecko profiler r=sfink,mstange
Denis Palmeiro <dpalmeiro@mozilla.com> - Mon, 13 Aug 2018 17:56:52 +0000 - rev 480466
Push 227 by fmarier@mozilla.com at Sat, 18 Aug 2018 09:02:59 +0000
bug 785922: Emit column numbers for JS frames and functions in the gecko profiler r=sfink,mstange Add support for column numbers when profiling JS stack frames and functions. This will help debug minified scripts when inspecting performance profiles. The column information will be emitted as a new column property that is part of the frameTable in the profile output, and will also be appended in the descriptive profiler string. Differential Revision: https://phabricator.services.mozilla.com/D3059
a0200438265ba27626915031f3dd2f91f95969b6: Bug 1431255 - Part III, Create per-origin sandboxes from XPCJSRuntime and load UA widgets scripts r=bholley,jaws,sfink
Timothy Guan-tin Chien <timdream@gmail.com> - Wed, 27 Jun 2018 11:34:07 -0700 - rev 480157
Push 224 by fmarier@mozilla.com at Fri, 17 Aug 2018 00:53:15 +0000
Bug 1431255 - Part III, Create per-origin sandboxes from XPCJSRuntime and load UA widgets scripts r=bholley,jaws,sfink This patch creates the basic structure on how the widget scripts can be loaded and be pointed to the Shadow Root, from the UAWidgetsChild.jsm. The UAWidgetsClass class asks for a sandbox from Cu.getUAWidgetScope(), which calls into XPCJSRuntime::GetUAWidgetScope(). It creates and keeps the sandboxes, in a GCHashMap keyed to the origin, so we could reuse it if needed. MozReview-Commit-ID: J6W4PDQWMcN
f3796f1a571b6e11e247f366dc45cecd97d77729: Bug 1473213 (Part 4) - Add cells allocated statistics r=sfink
Paul Bone <pbone@mozilla.com> - Wed, 08 Aug 2018 12:54:50 +1000 - rev 479640
Push 222 by fmarier@mozilla.com at Thu, 16 Aug 2018 00:03:56 +0000
Bug 1473213 (Part 4) - Add cells allocated statistics r=sfink
5f35c86a0d22072c5287f46f338bcbd36ea5d76c: Bug 1473213 (Part 3) - Refactor JSContext code for changing zones r=sfink
Paul Bone <pbone@mozilla.com> - Wed, 08 Aug 2018 12:05:59 +1000 - rev 479639
Push 222 by fmarier@mozilla.com at Thu, 16 Aug 2018 00:03:56 +0000
Bug 1473213 (Part 3) - Refactor JSContext code for changing zones r=sfink * Introduce a setZone method that changes the zone and the freelist. * leaveAtomsZone() private
8217b33680fa66e2553d27c9076a6bf429df3431: Bug 1473213 (Part 2) - add a comment about an invariant required by the JIT r=sfink
Paul Bone <pbone@mozilla.com> - Mon, 16 Jul 2018 11:36:49 +1000 - rev 479638
Push 222 by fmarier@mozilla.com at Thu, 16 Aug 2018 00:03:56 +0000
Bug 1473213 (Part 2) - add a comment about an invariant required by the JIT r=sfink
ec59471499f174cd05086b572f759f67cdfa4476: Bug 1481093 - Also update children of typed object type descriptor objects when compacting r=sfink a=abillings
Jon Coppeard <jcoppeard@mozilla.com> - Mon, 13 Aug 2018 13:21:34 +0100 - rev 479521
Push 222 by fmarier@mozilla.com at Thu, 16 Aug 2018 00:03:56 +0000
Bug 1481093 - Also update children of typed object type descriptor objects when compacting r=sfink a=abillings
ad30dc53e38ec41adc99f81fd8a5102ecf7775fd: Bug 1481998 - Make mozilla::Hash{Map,Set}'s entry storage allocation lazy. r=luke,sfink
Nicholas Nethercote <nnethercote@mozilla.com> - Fri, 10 Aug 2018 18:00:29 +1000 - rev 479460
Push 220 by fmarier@mozilla.com at Mon, 13 Aug 2018 20:22:19 +0000
Bug 1481998 - Make mozilla::Hash{Map,Set}'s entry storage allocation lazy. r=luke,sfink Entry storage allocation now occurs on the first lookupForAdd()/put()/putNew(). This removes the need for init() and initialized(), and matches how PLDHashTable/nsTHashtable work. It also removes the need for init() functions in a lot of types that are built on top of mozilla::Hash{Map,Set}. Pros: - No need for init() calls and subsequent checks. - No memory allocated for empty tables, which are not that uncommon. Cons: - An extra branch in lookup() and lookupForAdd(), but not in put()/putNew(), because the existing checkOverloaded() can handle it. Specifics: - Construction now can take a length parameter. - init() is removed. Explicit length-setting, when necessary, now occurs in the constructors. - initialized() is removed. - capacity() now returns zero when the entry storage is absent. - lookupForAdd() is no longer `const`, because it can instantiate the storage, which requires modifications. - lookupForAdd() can now return an invalid AddPtr in two cases: - old: hashing failure (due to OOM in the hasher) - new: OOM while instantiating entry storage The existing failure handling paths for the old case work for the new case. - clear(), finish(), and clearAndShrink() are replaced by clear(), compact(), and reserve(). The old compactIfUnderloaded() is also removed. - Capacity computation code is now in its own functions, bestCapacity() and hashShift(). setTableSizeLog2() is removed. - uint32_t is used throughout for capacities, instead of size_t, for consistency with other similar values. - changeTableSize() now takes a capacity instead of a deltaLog2, and it can now handle !mTable. Measurements: - Total source code size is reduced by over 900 lines. Also, lots of existing lines got shorter (i.e. two checks were reduced to one). - Executable size barely changed, down by 2 KiB on Linux64. The extra branches are compensated for by the lack of init() calls. - Speed changed negligibly. The instruction count for Bench_Cpp_MozHash increased from 2.84 billion to 2.89 billion but any execution time change was well below noise.