readin
if (readin(in) == 0) bye("unexpected end of ", in->name);
if (gz.left || readin(&gz))
eccline->readin = (~eccline->present) & allbits;
KASSERT(eccline->readin);
"dirty %"PRIx64"\n\t", eccline->present, eccline->readin,
if (eccline->readin)
eccline->present = eccline->readin = eccline->dirty = 0;
if (eccline->readin & eccline->present)
eccline->readin &= (~eccline->present) & allbits;
if (eccline->readin)
eccline->readin &= ~bit; /* just in case */
eccline->readin &= ~bit; /* just in case */
eccline->readin |= bit;
eccline->readin |= bit;
KASSERT((eccline->readin & bit) == 0);
KASSERT((eccline->readin & bit) == 0);
uint64_t readin; /* bitmap */
static int readin(int fd, struct diff **);
m = readin(fd13[0], &d13);
n = readin(fd23[0], &d23);