[JS-internals] HeapPtr is now GCPtr, long live HeapPtr

2016-05-24 Thread Terrence Cole
Remember how we have both JS::Heap and js::HeapPtr and they have dangerously different semantics? And how we also have a js::RelocatablePtr and it has similar semantics to JS::Heap, but not js::Heap? Neither can anyone else! On inbound, as of a few minutes ago, HeapPtr is now GCPtr and

Re: [JS-internals] Clang-format

2016-05-06 Thread Terrence Cole
Last I looked, nor does it handle the half-indent for private/protected/public in classes, { on newline iff the if is multilined, or even conditional {} based on number of statements in adjacent if/else blocks. FWIW, I'm now all-in for adding a checkin script to run clang-format with

Re: [JS-internals] The rooting guide seems to have some footguns

2014-09-26 Thread Terrence Cole
On 09/25/2014 05:06 PM, Boris Zbarsky wrote: I was just reading a patch by someone who read https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/GC_Rooting_Guide to figure out how to deal with GCThings. The result was that they had a HeapT that they were not tracing. I'm

Re: [JS-internals] Growing arrays

2014-07-17 Thread Terrence Cole
On 07/16/2014 11:40 PM, Nicholas Nethercote wrote: On a related note: ObjectElements::VALUES_PER_HEADER is 2. Is this because 2 * sizeof(HeapSlot) is 16 bytes, which is equal to sizeof(ObjectElements)? Yes. Nick On Wed, Jul 16, 2014 at 11:34 PM, Nicholas Nethercote

Re: [JS-internals] Weak references

2013-11-01 Thread Terrence Cole
On 11/01/2013 08:26 AM, Jason Orendorff wrote: This proposal is before TC39 for inclusion in the next ECMAScript spec edition following ES6: http://wiki.ecmascript.org/doku.php?id=strawman:weak_references Mozilla GC hackers are opposed, for reasons they can articulate; I'm opposed because

Re: [JS-internals] Conformance testing of the JavaScript engine(s?)

2013-08-11 Thread Terrence Cole
Short answer: yes. Longer answer: mostly. The jit-test harness, currently part of |make check| and run under |B| on most TBPL builders, runs each test in a large number of different configurations, including the ones you are inquiring about: --baseline-eager, --ion-eager, and --baseline-eager

[JS-internals] Exact Rooting Update - 8 Jan 2013

2013-01-08 Thread Terrence Cole
I'm back from vacation and that means: another big pile of numbers! I think this is the first pass that contains a regression. We're about 300 un-rooted up from the middle of December, mostly from new JSObject* in the browser. Steve was right and we do actually need to do some real visualization

[JS-internals] Exact rooting progress script

2012-11-06 Thread Terrence Cole
During the work week I threw together a script to count usages of unrooted types. I've frobulated the script now to give more accurate results and to be able to print unrooted matches in a directory. If anyone want to use it, to find things that need rooting, I've attached it here. The new

Re: [JS-internals] Regressions in js/src/tests?

2012-10-18 Thread Terrence Cole
On 10/17/2012 10:01 PM, Nicholas Nethercote wrote: On Thu, Oct 18, 2012 at 1:29 PM, Brendan Eich bren...@mozilla.com wrote: $ ./Darwin_DBG.OBJ/js -f tests/shell.js -f tests/js1_8/shell.js -f tests/js1_8/genexps/shell.js -f tests/js1_8/genexps/regress-380237-01.js - BUGNUMBER: 380237 STATUS: