This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Use is_utf8_invariant_string() more
authorKarl Williamson <khw@cpan.org>
Mon, 27 Nov 2017 00:06:44 +0000 (17:06 -0700)
committerKarl Williamson <khw@cpan.org>
Mon, 27 Nov 2017 21:48:45 +0000 (14:48 -0700)
commit33756530b5c7b031069d47839f8132f4574d2f50
tree3a30b3b8f31aacdbd2a9c6cb03ffac91c315e835
parentb2e7ed74dcabdba63e3e8e2ff1980e1cd109b869
Use is_utf8_invariant_string() more

Now that this function was changed to do word-at-a time searching in
commit e17544a60909ed9555c0dad7cd24afc40eb736e7, we can more quickly
find the first variant byte in a string, if any.  Given that a lot of
usage of Perl is on ASCII data, it makes sense to try this first before
any byte-at-a-time processing.

Since Perl can be used on things that are mostly non-ASCII, we give up
at the first such one, and process the rest of the string byte-by-byte.
Otherwise we could have a pipeline of finding the next variant quickly,
but this would only be faster if variants were rare, which I don't feel
we can be confident about, after finding at least one.
embed.fnc
inline.h
proto.h