x86: split i386-gen's opcode hash entry struct
authorJan Beulich <jbeulich@suse.com>
Fri, 20 Jan 2023 09:18:40 +0000 (10:18 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 20 Jan 2023 09:18:40 +0000 (10:18 +0100)
commita2e2f5ad7431e6179092b770fe8ce54a32b4246b
tree4bebc4f3312869fd4574f80dd7e05151f7841c02
parent2d9e089097806867bf6842034bf577e55469f624
x86: split i386-gen's opcode hash entry struct

All glibc malloc() implementations I've checked have a smallest
allocation size worth of 3 pointers, with an increment worth of 2
pointers. Hence mnemonics with multiple templates can be stored more
efficiently when maintaining the shared "name" field only in the actual
hash entry. (To express the shared nature, also convert "name" to by
pointer-to-const.)

While doing the conversation also pull out common code from the involved
if/else construct in expand_templates().
opcodes/i386-gen.c