René Scharfe f13ca7cef5 name-rev: put struct rev_name into commit slab
The commit slab commit_rev_name contains a pointer to a struct rev_name,
and the actual struct is allocated separatly.  Avoid that allocation and
pointer indirection by storing the full struct in the commit slab.  Use
the tip_name member pointer to determine if the returned struct is
initialized.

Performance in the Linux repository measured with hyperfine before:

Benchmark #1: ./git -C ../linux/ name-rev --all
  Time (mean ± σ):     953.5 ms ±   6.3 ms    [User: 901.2 ms, System: 52.1 ms]
  Range (min … max):   945.2 ms … 968.5 ms    10 runs

... and with this patch:

Benchmark #1: ./git -C ../linux/ name-rev --all
  Time (mean ± σ):     851.0 ms ±   3.1 ms    [User: 807.4 ms, System: 43.6 ms]
  Range (min … max):   846.7 ms … 857.0 ms    10 runs

Signed-off-by: René Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2020-02-05 10:24:15 -08:00
..
2019-12-25 11:22:01 -08:00
2019-10-15 13:47:59 +09:00
2019-11-11 11:46:29 +09:00
2019-09-18 11:50:09 -07:00
2019-12-25 11:21:58 -08:00
2019-12-25 11:21:57 -08:00
2019-10-15 13:48:02 +09:00
2019-04-25 16:41:12 +09:00
2019-10-15 13:48:02 +09:00
2019-11-10 16:00:54 +09:00
2019-09-30 13:19:32 +09:00
2019-10-07 11:32:53 +09:00
2019-05-13 14:22:54 +09:00
2019-08-19 13:05:58 -07:00
2019-11-10 18:02:14 +09:00
2019-10-11 14:24:46 +09:00
2019-12-10 13:11:41 -08:00
2019-10-11 14:24:48 +09:00
2019-12-01 09:04:37 -08:00
2019-06-19 08:19:21 -07:00