gpgscm: Optimize symbol lookups and insertions.

Authored by justus on Jan 31 2017, 1:22 PM.

Description

gpgscm: Optimize symbol lookups and insertions.

* tests/gpgscm/scheme.c (oblist_find_by_name): Keep the list of
symbols sorted, return the slot where a new symbol must be inserted on
lookup failures.
(oblist_add_by_name): Add the new symbol at the given slot.
(mk_symbol): Adjust callsite.
(gensym): Likewise.
(assign_syntax): Likewise.

Optimize symbol lookups by keeping the lists in the hash table (or the
list if compiled with USE_OBJECT_LIST) sorted by the symbol names.
Optimize the insertions by passing the slot computed by the lookup to
the insertion.

  • Signed-off-by: Justus Winter <justus@g10code.com>

Details

Committed
justusJan 31 2017, 6:49 PM
Parents
rE85f6f60197fe: gpgscm: Fix build with object list.
Branches
Unknown
Tags
Unknown