This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
t/re/regexp.t: Speed up many regex tests on ASCII platform
authorKarl Williamson <khw@cpan.org>
Thu, 19 Dec 2019 16:59:54 +0000 (09:59 -0700)
committerKarl Williamson <khw@cpan.org>
Thu, 19 Dec 2019 17:11:58 +0000 (10:11 -0700)
commit2b7f9bbf39f71c0d94db058b0110977a9470c1b2
tree03973b017684a19d0accc91db82dff074290ad88
parentc11f14f333e87d882337b1655a91e10ece130c5f
t/re/regexp.t: Speed up many regex tests on ASCII platform

This commit:

 commit 0cd59ee9ca0f0af3c0c172ecc27bb3f02da6db08
 Author:     Karl Williamson <khw@cpan.org>
 AuthorDate: Fri Sep 6 10:23:26 2019 -0600
 Commit:     Karl Williamson <khw@cpan.org>
 CommitDate: Mon Nov 11 21:05:13 2019 -0700

     t/re/regexp.t: Only convert to EBCDIC once

     Some tests get added as we go along, and those added tests have already
     been converted to EBCDIC if necessary.  Don't reconvert, which messes
     things up.

caused a huge slowdown in regex tests.  The most noticeable on my
platform was regexp_qr_embed_thr.t which doubled in wall clock time
spent.

It turns out that it was because a function was now always being called,
and that does nothing on ASCII platforms besides return its argument,
which then was copied over the argument.

This new commit causes the function to be a constant { 1; } on ASCII
platforms, so should be completely optimized out, returning the time
spent in that .t to 5.30 levels.
t/re/regexp.t