JavaScript:ActionMonkey:Stage 0 Whiteboard: Difference between revisions

Line 101: Line 101:
** I would say "unaffected" except that our use of <code>JS_malloc()</code> might end up decreasing so much as to defeat the purpose of this.  So maybe we need a new heuristic for <code>JS_MaybeGC()</code>. The only other place gcMallocBytes is directly used is for jsscope.c for changing scope (it allocates space with calloc but treats it as a malloc). Ask Brendan.
** I would say "unaffected" except that our use of <code>JS_malloc()</code> might end up decreasing so much as to defeat the purpose of this.  So maybe we need a new heuristic for <code>JS_MaybeGC()</code>. The only other place gcMallocBytes is directly used is for jsscope.c for changing scope (it allocates space with calloc but treats it as a malloc). Ask Brendan.
** This stage 0 work should not reduce the number of JS_malloc calls (jsgc.c does not call JS_malloc). What reduction were you expecting? /be
** This stage 0 work should not reduce the number of JS_malloc calls (jsgc.c does not call JS_malloc). What reduction were you expecting? /be
** I'm expecting to use MMgc, rather than <code>JS_malloc</code>, to allocate the character buffers for strings.  (This is what Tamarin does.  Otherwise, <code>JSString</code> would have to have a finalizer.)  -jto


* <code>JS_GCMETER</code>, JSGCStats, js_DumpGCStats - '''*'''
* <code>JS_GCMETER</code>, <code>JSGCStats</code>, <code>js_DumpGCStats</code> - '''*'''
** Gone.
** Gone.


Line 109: Line 110:


* <code>JSWeakRoots</code>, <code>JS_CLEAR_WEAK_ROOTS</code> - '''*'''
* <code>JSWeakRoots</code>, <code>JS_CLEAR_WEAK_ROOTS</code> - '''*'''
** Unaffected.
** These should be removed. /be
** These should be removed. /be
A few more that don't appear in <tt>jsgc.h</tt>:
* <code>JSRuntime::{gcCallback, gcThingCallback}</code> - '''*'''
** Easiest to implement by modifying MMgc.
638

edits