size = JS_ROUNDUP(size, TNINCR);
size = JS_ROUNDUP(size, TNINCR_SIZE);
js_AllocTryNotes(JSContext *cx, JSCodeGenerator *cg){    size_t size, incr;    ptrdiff_t delta;    size = cg->treeContext.tryCount * sizeof(JSTryNote);    if (size <= cg->tryNoteSpace)	return JS_TRUE;    /*     * Allocate trynotes from cx->tempPool.     * XXX too much growing and we bloat, as other tempPool allocators block     * in-place growth, and we never recycle old free space in an arena.     */    if (!cg->tryBase) {	size = JS_ROUNDUP(size, TNINCR);	JS_ARENA_ALLOCATE(cg->tryBase, &cx->tempPool, size);	if (!cg->tryBase)	    return JS_FALSE;	cg->tryNoteSpace = size;	cg->tryNext = cg->tryBase;    } else {	delta = PTRDIFF((char *)cg->tryNext, (char *)cg->tryBase, char);	incr = size - cg->tryNoteSpace;	incr = JS_ROUNDUP(incr, TNINCR);	size = cg->tryNoteSpace;	JS_ARENA_GROW(cg->tryBase, &cx->tempPool, size, incr);	if (!cg->tryBase)	    return JS_FALSE;	cg->tryNoteSpace = size + incr;	cg->tryNext = (JSTryNote *)((char *)cg->tryBase + delta);    }    return JS_TRUE;}