Kevin Bracey <kevin@xxxxxxxxx> writes: > diff --git a/revision.c b/revision.c > index a67b615..c88ded8 100644 > --- a/revision.c > +++ b/revision.c > @@ -429,10 +429,100 @@ static int rev_same_tree_as_empty(struct rev_info *revs, struct commit *commit) > return retval >= 0 && (tree_difference == REV_TREE_SAME); > } > > +struct treesame_state { > + unsigned int nparents; > + unsigned char treesame[FLEX_ARRAY]; > +}; I have been wondering if we want to do one-bit (not one-byte) per parent but no biggie ;-) > @@ -1971,6 +2083,70 @@ static struct merge_simplify_state *locate_simplify_state(struct rev_info *revs, > return st; > } > > +static int mark_redundant_parents(struct rev_info *revs, struct commit *commit) > +{ > +... > + po=po->next; po = po->next; > + } This seems to be identical (modulo tests) from the previous round, which I found a reasonable thing to do. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html