This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
t/re/fold_grind.t: slight speed up
authorDavid Mitchell <davem@iabyn.com>
Wed, 23 Feb 2011 22:01:04 +0000 (22:01 +0000)
committerDavid Mitchell <davem@iabyn.com>
Wed, 23 Feb 2011 22:03:41 +0000 (22:03 +0000)
Hoist a 'next' up a few levels from the innnermost loop, where its
condition is invariant. This shaves a few seconds off the execution time.

t/re/fold_grind.t

index d4ca846..458c719 100644 (file)
@@ -352,6 +352,9 @@ foreach my $test (sort { numerically } keys %tests) {
             run_test($eval, ++$count, "", "");
           }
 
+          # XXX Doesn't currently test multi-char folds in pattern
+          next if @pattern != 1;
+
           foreach my $bracketed (0, 1) {   # Put rhs in [...], or not
             foreach my $inverted (0,1) {
                 next if $inverted && ! $bracketed;  # inversion only valid in [^...]
@@ -449,8 +452,6 @@ foreach my $test (sort { numerically } keys %tests) {
                             $op = 0 if $target_has_latin1 && $charset eq 'l' && $both_sides && ( ! $quantifier || $quantifier eq '?') && $parend < 2;
                           }
 
-                          # XXX Doesn't currently test multi-char folds in pattern
-                          next if @pattern != 1;
 
                           my $desc = "my \$c = \"$prepend$lhs$append\"; "
                                    . "my \$p = qr/$quantified/i;"