Assorted 2.15 fixes.
[p5sagit/p5-mst-13.2.git] / ext / Encode / t / unibench.pl
index 0d8dbf0..ed444cd 100644 (file)
@@ -37,6 +37,12 @@ for my $i (@sizes){
        for my $op (qw(encode decode)){
            my ($meth, $from, $to) = ($op eq 'encode') ?
                (\&encode, 'utf8', 'utf16') : (\&decode, 'utf16', 'utf8');
+           my $XS = sub {
+               Encode::Unicode::set_transcoder("xs");  
+               $meth->('UTF-16BE', $S{$from}{$sz}{$cp})
+                    eq $S{$to}{$sz}{$cp} 
+                        or die "$op,$from,$to,$sz,$cp";
+           };
            my $modern = sub {
                Encode::Unicode::set_transcoder("modern");  
                $meth->('UTF-16BE', $S{$from}{$sz}{$cp})
@@ -52,7 +58,8 @@ for my $i (@sizes){
            print "---- $op length=$sz/range=$cp ----\n";
            my $r = timethese($count,
                     {
-                     "Modern" => $modern,
+                     "XS"      => $XS,
+                     "Modern"  => $modern,
                      "Classic" => $classic,
                     },
                     'none',