summaryrefslogtreecommitdiff
path: root/regen/mk_invlists.pl
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2019-12-18 20:25:34 -0700
committerKarl Williamson <khw@cpan.org>2019-12-18 20:42:45 -0700
commitc11f14f333e87d882337b1655a91e10ece130c5f (patch)
tree9b700e780b4d128c4d5324257d486275a5fad08a /regen/mk_invlists.pl
parent758600332df6396bd902fa4a761230f89664ecb8 (diff)
downloadperl-c11f14f333e87d882337b1655a91e10ece130c5f.tar.gz
regen/mk_invlists.pl: Move inversion list adjacent to similar
This will lessen any paging that might occur. Further, on most builds, it and another table are identical, so only one is actually needed.
Diffstat (limited to 'regen/mk_invlists.pl')
-rw-r--r--regen/mk_invlists.pl16
1 files changed, 8 insertions, 8 deletions
diff --git a/regen/mk_invlists.pl b/regen/mk_invlists.pl
index e14b5c30cb..ee53d76cb7 100644
--- a/regen/mk_invlists.pl
+++ b/regen/mk_invlists.pl
@@ -1151,13 +1151,6 @@ sub _Perl_CCC_non0_non230 {
return \@return;
}
-sub _Perl_InBitmap {
- my @return;
- push @return, $_ for 0 .. $num_anyof_code_points - 1;
- @return = mk_invlist_from_sorted_cp_list(\@return);
- return \@return;
-}
-
sub output_table_common {
# Common subroutine to actually output the generated rules table.
@@ -2340,6 +2333,14 @@ switch_pound_if ('ALL', 'PERL_IN_REGCOMP_C');
output_invlist("Latin1", [ 0, 256 ]);
output_invlist("AboveLatin1", [ 256 ]);
+if ($num_anyof_code_points == 256) { # Same as Latin1
+ print $out_fh
+ "\nstatic const UV * const InBitmap_invlist = Latin1_invlist;\n";
+}
+else {
+ output_invlist("InBitmap", [ 0, $num_anyof_code_points ]);
+}
+
end_file_pound_if;
# We construct lists for all the POSIX and backslash sequence character
@@ -2386,7 +2387,6 @@ push @props, sort { prop_name_for_cmp($a) cmp prop_name_for_cmp($b) } qw(
Case_Folding
&_Perl_IVCF
&_Perl_CCC_non0_non230
- &_Perl_InBitmap
);
# NOTE that the convention is that extra enum values come
# after the property name, separated by commas, with the enums