vppinfra: more bihash optimizatons 61/26661/2
authorDamjan Marion <damarion@cisco.com>
Thu, 23 Apr 2020 11:41:47 +0000 (13:41 +0200)
committerDamjan Marion <damarion@cisco.com>
Thu, 23 Apr 2020 11:45:25 +0000 (13:45 +0200)
commit68e5fd5206e75cb367375b4fea2e531a3712fd06
tree857b29b0a960a4147c6009cf2edc70bdc0ca7be3
parent59f71132edffcfa1b94c400736575bd55bdbd7d7
vppinfra: more bihash optimizatons

* Avoid doing expensive bit extraction for most likely case where bucket
  .log2_page_size == 0 and .linear_search == 0, saves 3-5 cycles for
  lookup, data_prefetch and add operation

* use bextr instruction when available (x86 BMI instruction set)

Type: improvement
Change-Id: I163df36a29287482c5f133be8b21d62a2f7440de
Signed-off-by: Damjan Marion <damarion@cisco.com>
src/vppinfra/bihash_template.c
src/vppinfra/bihash_template.h
src/vppinfra/clib.h