[10] RFR: 8185104: Generate CharacterDataLatin1 lookup tables directly
Claes Redestad
claes.redestad at oracle.com
Tue Jul 25 11:28:30 UTC 2017
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..
More information about the core-libs-dev
mailing list