if (!AddSpanDep(cx, cg, pc, pc2, off))
if (off != 0 && !AddSpanDep(cx, cg, pc, pc2, off))
BuildSpanDepTable(JSContext *cx, JSCodeGenerator *cg){    jsbytecode *pc, *end;    JSOp op;    const JSCodeSpec *cs;    ptrdiff_t len, off;    pc = CG_BASE(cg);    end = CG_NEXT(cg);    while (pc < end) {        op = (JSOp)*pc;        cs = &js_CodeSpec[op];        len = (ptrdiff_t)cs->length;        switch (cs->format & JOF_TYPEMASK) {          case JOF_JUMP:            off = GET_JUMP_OFFSET(pc);            if (!AddSpanDep(cx, cg, pc, pc, off))                return JS_FALSE;            break;#if JS_HAS_SWITCH_STATEMENT          case JOF_TABLESWITCH:          {            jsbytecode *pc2;            jsint i, low, high;            pc2 = pc;            off = GET_JUMP_OFFSET(pc2);            if (!AddSpanDep(cx, cg, pc, pc2, off))                return JS_FALSE;            pc2 += JUMP_OFFSET_LEN;            low = GET_JUMP_OFFSET(pc2);            pc2 += JUMP_OFFSET_LEN;            high = GET_JUMP_OFFSET(pc2);            pc2 += JUMP_OFFSET_LEN;            for (i = low; i <= high; i++) {                off = GET_JUMP_OFFSET(pc2);                if (!AddSpanDep(cx, cg, pc, pc2, off))                    return JS_FALSE;                pc2 += JUMP_OFFSET_LEN;            }            len = 1 + pc2 - pc;            break;          }          case JOF_LOOKUPSWITCH:          {            jsbytecode *pc2;            jsint npairs;            pc2 = pc;            off = GET_JUMP_OFFSET(pc2);            if (!AddSpanDep(cx, cg, pc, pc2, off))                return JS_FALSE;            pc2 += JUMP_OFFSET_LEN;            npairs = (jsint) GET_ATOM_INDEX(pc2);            pc2 += ATOM_INDEX_LEN;            while (npairs) {                pc2 += ATOM_INDEX_LEN;                off = GET_JUMP_OFFSET(pc2);                if (!AddSpanDep(cx, cg, pc, pc2, off))                    return JS_FALSE;                pc2 += JUMP_OFFSET_LEN;                npairs--;            }            len = 1 + pc2 - pc;            break;          }#endif /* JS_HAS_SWITCH_STATEMENT */        }        pc += len;    }    return JS_TRUE;}