# HG changeset patch # User Bruno Haible # Date 1298131405 -3600 # Node ID 44f711d7d71f524294b44b855299faccbdf8f186 # Parent d6400e7c2448c20d8ce9c1e12740c200d0a85e9f unictype/scripts: Reduce the size of the 'data' segment. * lib/gen-uni-tables.c (output_scripts_byname): Emit gperf option '%pic'. * lib/unictype/scripts_byname.gperf: Regenerated. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2011-02-19 Bruno Haible + + unictype/scripts: Reduce the size of the 'data' segment. + * lib/gen-uni-tables.c (output_scripts_byname): Emit gperf option + '%pic'. + * lib/unictype/scripts_byname.gperf: Regenerated. + 2011-02-19 Bruno Haible stdint: Update documentation. diff --git a/lib/gen-uni-tables.c b/lib/gen-uni-tables.c --- a/lib/gen-uni-tables.c +++ b/lib/gen-uni-tables.c @@ -3943,7 +3943,7 @@ fprintf (stream, "/* Unicode scripts. */\n"); fprintf (stream, "/* Generated automatically by gen-uni-tables.c for Unicode %s. */\n", version); - fprintf (stream, "struct named_script { const char *name; unsigned int index; };\n"); + fprintf (stream, "struct named_script { int name; unsigned int index; };\n"); fprintf (stream, "%%struct-type\n"); fprintf (stream, "%%language=ANSI-C\n"); fprintf (stream, "%%define hash-function-name scripts_hash\n"); @@ -3951,6 +3951,8 @@ fprintf (stream, "%%readonly-tables\n"); fprintf (stream, "%%global-table\n"); fprintf (stream, "%%define word-array-name script_names\n"); + fprintf (stream, "%%pic\n"); + fprintf (stream, "%%define string-pool-name script_stringpool\n"); fprintf (stream, "%%%%\n"); for (s = 0; s < numscripts; s++) fprintf (stream, "%s, %u\n", scripts[s], s); diff --git a/lib/unictype/scripts_byname.gperf b/lib/unictype/scripts_byname.gperf --- a/lib/unictype/scripts_byname.gperf +++ b/lib/unictype/scripts_byname.gperf @@ -1,7 +1,7 @@ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Unicode scripts. */ /* Generated automatically by gen-uni-tables.c for Unicode 6.0.0. */ -struct named_script { const char *name; unsigned int index; }; +struct named_script { int name; unsigned int index; }; %struct-type %language=ANSI-C %define hash-function-name scripts_hash @@ -9,6 +9,8 @@ %readonly-tables %global-table %define word-array-name script_names +%pic +%define string-pool-name script_stringpool %% Common, 0 Latin, 1