test/hotspot/jtreg/compiler/intrinsics/base64/TestBase64.java
Index Unified diffs Context diffs Sdiffs Frames Patch New Old Previous File Next File open Sdiff test/hotspot/jtreg/compiler/intrinsics/base64

test/hotspot/jtreg/compiler/intrinsics/base64/TestBase64.java

Print this page




  34  *      compiler.intrinsics.base64.TestBase64
  35  */
  36 
  37 package compiler.intrinsics.base64;
  38 
  39 import java.io.BufferedReader;
  40 import java.io.FileReader;
  41 import java.nio.ByteBuffer;
  42 import java.nio.charset.Charset;
  43 import java.nio.charset.StandardCharsets;
  44 import java.nio.file.Files;
  45 import java.nio.file.Paths;
  46 import java.util.Base64;
  47 import java.util.Base64.Decoder;
  48 import java.util.Base64.Encoder;
  49 import java.util.Objects;
  50 import java.util.Random;
  51 
  52 import compiler.whitebox.CompilerWhiteBoxTest;
  53 import sun.hotspot.code.Compiler;
  54 import jtreg.SkippedException;
  55 
  56 public class TestBase64 {
  57     static boolean checkOutput = Boolean.getBoolean("checkOutput");
  58 
  59     public static void main(String[] args) throws Exception {
  60         if (!Compiler.isIntrinsicAvailable(CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION, "java.util.Base64$Encoder", "encodeBlock", byte[].class, int.class, int.class, byte[].class, int.class, boolean.class)) {
  61             throw new SkippedException("Base64 intrinsic is not available");

  62         }
  63         int iters = (args.length > 0 ? Integer.valueOf(args[0]) : 100000);
  64         System.out.println(iters + " iterations");
  65 
  66         test0(Base64Type.BASIC, Base64.getEncoder(), Base64.getDecoder(),"plain.txt", "baseEncode.txt", iters);
  67         test0(Base64Type.URLSAFE, Base64.getUrlEncoder(), Base64.getUrlDecoder(),"plain.txt", "urlEncode.txt", iters);
  68         test0(Base64Type.MIME, Base64.getMimeEncoder(), Base64.getMimeDecoder(),"plain.txt", "mimeEncode.txt", iters);
  69     }
  70 
  71     public static void test0(Base64Type type, Encoder encoder, Decoder decoder, String srcFile, String encodedFile, int numIterations) throws Exception {
  72 
  73         String[] srcLns = Files.readAllLines(Paths.get(SRCDIR, srcFile), DEF_CHARSET)
  74                                .toArray(new String[0]);
  75         String[] encodedLns = Files.readAllLines(Paths.get(SRCDIR, encodedFile), DEF_CHARSET)
  76                                    .toArray(new String[0]);
  77 
  78         for (int i = 0; i < numIterations; i++) {
  79             int lns = 0;
  80             for (String srcStr : srcLns) {
  81                 String encodedStr = null;




  34  *      compiler.intrinsics.base64.TestBase64
  35  */
  36 
  37 package compiler.intrinsics.base64;
  38 
  39 import java.io.BufferedReader;
  40 import java.io.FileReader;
  41 import java.nio.ByteBuffer;
  42 import java.nio.charset.Charset;
  43 import java.nio.charset.StandardCharsets;
  44 import java.nio.file.Files;
  45 import java.nio.file.Paths;
  46 import java.util.Base64;
  47 import java.util.Base64.Decoder;
  48 import java.util.Base64.Encoder;
  49 import java.util.Objects;
  50 import java.util.Random;
  51 
  52 import compiler.whitebox.CompilerWhiteBoxTest;
  53 import sun.hotspot.code.Compiler;

  54 
  55 public class TestBase64 {
  56     static boolean checkOutput = Boolean.getBoolean("checkOutput");
  57 
  58     public static void main(String[] args) throws Exception {
  59         if (!Compiler.isIntrinsicAvailable(CompilerWhiteBoxTest.COMP_LEVEL_FULL_OPTIMIZATION, "java.util.Base64$Encoder", "encodeBlock", byte[].class, int.class, int.class, byte[].class, int.class, boolean.class)) {
  60             System.out.println("Base64 intrinsic is not available");
  61             return;
  62         }
  63         int iters = (args.length > 0 ? Integer.valueOf(args[0]) : 100000);
  64         System.out.println(iters + " iterations");
  65 
  66         test0(Base64Type.BASIC, Base64.getEncoder(), Base64.getDecoder(),"plain.txt", "baseEncode.txt", iters);
  67         test0(Base64Type.URLSAFE, Base64.getUrlEncoder(), Base64.getUrlDecoder(),"plain.txt", "urlEncode.txt", iters);
  68         test0(Base64Type.MIME, Base64.getMimeEncoder(), Base64.getMimeDecoder(),"plain.txt", "mimeEncode.txt", iters);
  69     }
  70 
  71     public static void test0(Base64Type type, Encoder encoder, Decoder decoder, String srcFile, String encodedFile, int numIterations) throws Exception {
  72 
  73         String[] srcLns = Files.readAllLines(Paths.get(SRCDIR, srcFile), DEF_CHARSET)
  74                                .toArray(new String[0]);
  75         String[] encodedLns = Files.readAllLines(Paths.get(SRCDIR, encodedFile), DEF_CHARSET)
  76                                    .toArray(new String[0]);
  77 
  78         for (int i = 0; i < numIterations; i++) {
  79             int lns = 0;
  80             for (String srcStr : srcLns) {
  81                 String encodedStr = null;


test/hotspot/jtreg/compiler/intrinsics/base64/TestBase64.java
Index Unified diffs Context diffs Sdiffs Frames Patch New Old Previous File Next File