summaryrefslogtreecommitdiff
path: root/utf8.c
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2018-04-25 21:18:59 -0600
committerKarl Williamson <khw@cpan.org>2018-06-25 07:33:29 -0600
commit7a6f68415b295f4315b6181237ea0000dd706cd5 (patch)
tree739d1ffd9e2d5e805e719b443241ed0ca56b2836 /utf8.c
parent1aefa327470af34c715bc791e45947bcabe2fae5 (diff)
downloadperl-7a6f68415b295f4315b6181237ea0000dd706cd5.tar.gz
regen/mk_invlists.pl: Add to list of props to keep together
Using the same idea as pp_hot.c, the Unicode properties actually used by perl are attempted to be kept together so that paging in one is likely to page in others. A few were omitted prior to this commit.
Diffstat (limited to 'utf8.c')
-rw-r--r--utf8.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/utf8.c b/utf8.c
index c62bd3e4c4..517c5a46d0 100644
--- a/utf8.c
+++ b/utf8.c
@@ -6226,20 +6226,22 @@ Perl_parse_uniprop_string(pTHX_ const char * const name, const Size_t len, const
/* In a few properties, a different property is used under /i. These are
* unlikely to change, so are hard-coded here. */
if (to_fold) {
- if ( table_index == PL_XPOSIXUPPER
- || table_index == PL_XPOSIXLOWER
- || table_index == PL_LT)
+ if ( table_index == PL_UPPER
+ || table_index == PL_LOWER
+ || table_index == PL_TITLE)
{
table_index = PL_CASED;
}
- else if ( table_index == PL_LU
- || table_index == PL_LL
- || table_index == PL_LT)
- {
- table_index = PL_L_AMP_;
+ else if ( table_index == PL_UPPERCASELETTER
+ || table_index == PL_LOWERCASELETTER
+#ifdef PL_TITLECASELETTER /* Missing from early Unicodes */
+ || table_index == PL_TITLECASELETTER
+#endif
+ ) {
+ table_index = PL_CASEDLETTER;
}
- else if ( table_index == PL_POSIXUPPER
- || table_index == PL_POSIXLOWER)
+ else if ( table_index == PL_POSIXUPPER
+ || table_index == PL_POSIXLOWER)
{
table_index = PL_POSIXALPHA;
}