Hi,
On 07/25/2017 01:14 PM, Ulf Zibis wrote:
Hi,
Am 23.07.2017 um 15:37 schrieb Claes Redestad:
1. it reduces the size of the generated bytecode, which is necessary
to keep code below method bytecode limits if the arrays generated are
very large
I always was wondering why filling large lookup tables is done by
static java code in the class. Wouldn't it be more clever, to load the
lookup table content from a binary resource file? Then we must not
bother to initialize tables by static fake strings to save bytecode
footprint.
The same thoughts would apply to the charset mappings in
sun.nio.charset classes.
while I think it's something to be avoided for CharacterDataLatin1
(since it's small enough anyway, as shown here), it seems like a fine
thing to do to experiment with loading arrays from binary resource files
instead of via "fake Strings". As a follow-up, of course.
Doing so may have both some good and some bad[1] startup implications,
but only an actual experiment will tell if the good outweighs the bad.
/Claes
[1] Loading some more classes, need to drop into the runtime image from
java code etc..