Replace HashtableOfPackage with HashMap
HashtableOfPackage is a hotspot during compilation.
get() time is reduced from ~5ns to ~3ns for empty maps
get() time is reduced from ~14ns to less then ~12ns for non empty maps
at the cost of an additional Object allocation.
The CharArrayMap grants a smooth transition between empty map
performance and large map performance for >5 elements.
Bug: 569069
Change-Id: I45df9ee3118093e64a68aa3a547bd1a7764699db
Signed-off-by: jkubitz <jkubitz-eclipse@gmx.de>
Reviewed-on: https://git.eclipse.org/r/c/jdt/eclipse.jdt.core/+/177529
Tested-by: JDT Bot <jdt-bot@eclipse.org>
Reviewed-by: Andrey Loskutov <loskutov@gmx.de>