diff-index: pass pathspec down to unpack-trees machinery
authorJunio C Hamano <gitster@pobox.com>
Mon, 29 Aug 2011 20:34:08 +0000 (13:34 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 29 Aug 2011 22:09:17 +0000 (15:09 -0700)
commit2f88c19700feb8db8f116f94bf558e61c82d543c
treeb245a1187555062e5b1b21fbaf3f7d6bb04cbc1f
parent40e372563cfbcce4380820ae03e872f09fa25327
diff-index: pass pathspec down to unpack-trees machinery

And finally, pass the pathspec down through unpack_trees() to traverse_trees()
callchain.

Before and after applying this series, looking for changes in the kernel
repository with a fairly narrow pathspec becomes somewhat faster.

  (without patch)
  $ /usr/bin/time git diff --raw v2.6.27 -- net/ipv6 >/dev/null
  0.48user 0.05system 0:00.53elapsed 100%CPU (0avgtext+0avgdata 163296maxresident)k
  0inputs+952outputs (0major+11163minor)pagefaults 0swaps

  (with patch)
  $ /usr/bin/time git diff --raw v2.6.27 -- net/ipv6 >/dev/null
  0.01user 0.00system 0:00.02elapsed 104%CPU (0avgtext+0avgdata 43856maxresident)k
  0inputs+24outputs (0major+3688minor)pagefaults 0swaps

Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff-lib.c