BackPatch(JSContext *cx, JSCodeGenerator *cg, JSStmtInfo *stmt, ptrdiff_t last, jsbytecode *target, jsbytecode op)
BackPatch(JSContext *cx, JSCodeGenerator *cg, ptrdiff_t last, jsbytecode *target, jsbytecode op)
BackPatch(JSContext *cx, JSCodeGenerator *cg, JSStmtInfo *stmt,          ptrdiff_t last, jsbytecode *target, jsbytecode op){    jsbytecode *pc;    ptrdiff_t delta, span;    pc = CG_CODE(cg, last);    while (pc != CG_CODE(cg, -1)) {        delta = GetJumpOffset(cg, pc);        span = PTRDIFF(target, pc, jsbytecode);        CHECK_AND_SET_JUMP_OFFSET(cx, cg, pc, span);        /*         * Set *pc after jump offset in case bpdelta didn't overflow, but span         * does (if so, CHECK_AND_SET_JUMP_OFFSET might call BuildSpanDepTable         * and need to see the JSOP_BACKPATCH* op at *pc).         */        *pc = op;        pc -= delta;    }    return JS_TRUE;}