From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/8047 Path: news.gmane.org!not-for-mail From: Alexander Monakov Newsgroups: gmane.linux.lib.musl.general Subject: [PATCH v2 0/6] gnu-hash speedups Date: Sun, 28 Jun 2015 02:48:29 +0300 Message-ID: <1435448915-28419-1-git-send-email-amonakov@ispras.ru> References: <1435101895-18240-1-git-send-email-amonakov@ispras.ru> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1435448958 30661 80.91.229.3 (27 Jun 2015 23:49:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 27 Jun 2015 23:49:18 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-8060-gllmg-musl=m.gmane.org@lists.openwall.com Sun Jun 28 01:49:18 2015 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1Z8zqW-0000uH-Cw for gllmg-musl@m.gmane.org; Sun, 28 Jun 2015 01:49:16 +0200 Original-Received: (qmail 26421 invoked by uid 550); 27 Jun 2015 23:49:13 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 24256 invoked from network); 27 Jun 2015 23:48:47 -0000 X-Mailer: git-send-email 2.1.4 In-Reply-To: <1435101895-18240-1-git-send-email-amonakov@ispras.ru> Xref: news.gmane.org gmane.linux.lib.musl.general:8047 Archived-At: v2: reorder patches [2] split out ghashmask micro-optimization into a separate patch [2] use 'unsigned char' rather than 'int' for struct udiv fields s1,s2,inc [2] use an explicit cast in bloomwords assignment [4] reorder 'hashtab' before 'dso' [5] remove branch on zero s1 [5] tweak implementation of saturating addition [5] fold 32-bit shift into s2, avoiding run-time adjustments on 64-bit arch Alexander Monakov (6): dynlink.c: use a faster expression in gnu_hash dynlink.c: use bloom filter in gnu hash lookup dynlink.c: slim down gnu_lookup dynlink.c: pass gnu-hash table pointer to gnu_lookup dynlink.c: compute modulus via magic multiplication dynlink.c: store bloom filter size in struct dso src/ldso/dynlink.c | 124 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 101 insertions(+), 23 deletions(-)