From b47e28a743afef4cd02fbe753c1526ed89c472c9 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Thu, 12 Dec 2013 16:34:15 -0800 Subject: lib: Avoid the hash-lookup division if possible For Dwarf_Abbrev codes, the most common case is that they're packed at the low end, saving uleb128 encoding size. Since the hash table is always resized to be no more than 90% full, those codes are always less than the table size, and dividing for the remainder is unnecessary. Dwarf_Dies are frequently created anew, and need to find abbrev each time, so even that one division becomes a noticeable hotspot. This patch adds a branch to avoid it, which is very predictable for the CPU. Signed-off-by: Josh Stone --- lib/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/ChangeLog') diff --git a/lib/ChangeLog b/lib/ChangeLog index 6ce3168f..9b8899e2 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,7 @@ +2013-12-12 Josh Stone + + * dynamicsizehash.c (lookup): Add a shortcut around division. + 2013-04-30 Jan Kratochvil * eu-config.h (COMPAT_VERSION_NEWPROTO): New. Twice. -- cgit v1.2.1