public final class org.graalvm.compiler.replacements.test.StringCompressInflateTest extends org.graalvm.compiler.replacements.test.MethodSubstitutionTest
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.replacements.test.StringCompressInflateTest
  super_class: org.graalvm.compiler.replacements.test.MethodSubstitutionTest
{
  static final int N;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1000

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 55
            ldc Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
         3: .line 57
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 55
            aload 0 /* this */
            invokespecial org.graalvm.compiler.replacements.test.MethodSubstitutionTest.<init>:()V
            return
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;

  public void checkAMD64();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 61
            getstatic org.graalvm.compiler.serviceprovider.JavaVersionUtil.JAVA_SPEC:I
            bipush 8
            if_icmpgt 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic org.junit.Assume.assumeFalse:(Z)V
         3: .line 63
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getTarget:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            instanceof jdk.vm.ci.amd64.AMD64
            invokestatic org.junit.Assume.assumeTrue:(Z)V
         4: .line 64
            return
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
    RuntimeVisibleAnnotations: 
      org.junit.Before()

  public void testStringLatin1Inflate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=11, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 68
            ldc "java.lang.StringLatin1"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* javaclass */
        start local 1 // java.lang.Class javaclass
         1: .line 69
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringLatin1InflateNode;
            astore 2 /* testclass */
        start local 2 // java.lang.Class testclass
         2: .line 71
            new org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods
            dup
            aload 0 /* this */
            ldc "testInflate"
            aload 1 /* javaclass */
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringLatin1InflateNode;
            ldc "inflate"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
         3: .line 72
            ldc [B
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc [C
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
         4: .line 71
            aastore
            invokespecial org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.<init>:(Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)V
            astore 3 /* tms */
        start local 3 // org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods tms
         5: .line 74
            aload 3 /* tms */
            aload 2 /* testclass */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.testSubstitution:(Ljava/lang/Class;)V
         6: .line 76
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: goto 40
         8: .line 77
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class java.lang.Class org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods int
      StackMap stack:
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            newarray 8
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.fillLatinBytes:([B)[B
            astore 5 /* src */
        start local 5 // byte[] src
         9: .line 78
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            newarray 5
            astore 6 /* dst */
        start local 6 // char[] dst
        10: .line 81
            aload 3 /* tms */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* src */
            aastore
            dup
            iconst_1
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 6 /* dst */
            aastore
            dup
            iconst_3
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.invokeJava:([Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* nil */
        start local 7 // java.lang.Object nil
        11: .line 83
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 12
            aload 7 /* nil */
            ifnull 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 86
      StackMap locals: byte[] char[] java.lang.Object
      StackMap stack:
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        13: goto 20
        14: .line 87
      StackMap locals: int
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 15
            aload 6 /* dst */
            iload 8 /* j */
            caload
            ldc 65280
            iand
            ifeq 15
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        15: .line 88
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 18
            bipush 32
            aload 6 /* dst */
            iload 8 /* j */
            caload
            if_icmpgt 16
            aload 6 /* dst */
            iload 8 /* j */
            caload
            bipush 126
            if_icmple 18
      StackMap locals:
      StackMap stack:
        16: sipush 160
            aload 6 /* dst */
            iload 8 /* j */
            caload
            if_icmpgt 17
            aload 6 /* dst */
            iload 8 /* j */
            caload
            sipush 255
            if_icmple 18
      StackMap locals:
      StackMap stack:
        17: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        18: .line 89
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 19
            aload 6 /* dst */
            iload 8 /* j */
            caload
            i2b
            aload 5 /* src */
            iload 8 /* j */
            baload
            if_icmpeq 19
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        19: .line 86
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        20: iload 8 /* j */
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            if_icmplt 14
        end local 8 // int j
        21: .line 92
            new java.lang.String
            dup
            aload 5 /* src */
            iconst_0
            aload 5 /* src */
            arraylength
            ldc "ISO8859_1"
            invokespecial java.lang.String.<init>:([BIILjava/lang/String;)V
            astore 8 /* str */
        start local 8 // java.lang.String str
        22: .line 94
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        23: goto 26
        24: .line 95
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class java.lang.Class org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods int byte[] char[] java.lang.Object java.lang.String int
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 25
            aload 5 /* src */
            iload 9 /* j */
            baload
            i2c
            sipush 255
            iand
            aload 8 /* str */
            iload 9 /* j */
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpeq 25
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        25: .line 94
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        26: iload 9 /* j */
            aload 5 /* src */
            arraylength
            if_icmplt 24
        end local 9 // int j
        27: .line 99
            aload 3 /* tms */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* str */
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.invokeTest:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast char[]
            astore 9 /* inflate1 */
        start local 9 // char[] inflate1
        28: .line 102
            iconst_0
            istore 10 /* j */
        start local 10 // int j
        29: goto 35
        30: .line 103
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class java.lang.Class org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods int byte[] char[] java.lang.Object java.lang.String char[] int
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 31
            aload 9 /* inflate1 */
            iload 10 /* j */
            caload
            ldc 65280
            iand
            ifeq 31
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        31: .line 104
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 34
            bipush 32
            aload 9 /* inflate1 */
            iload 10 /* j */
            caload
            if_icmpgt 32
            aload 9 /* inflate1 */
            iload 10 /* j */
            caload
            bipush 126
            if_icmple 34
      StackMap locals:
      StackMap stack:
        32: sipush 160
            aload 9 /* inflate1 */
            iload 10 /* j */
            caload
            if_icmpgt 33
            aload 9 /* inflate1 */
            iload 10 /* j */
            caload
            sipush 255
            if_icmple 34
      StackMap locals:
      StackMap stack:
        33: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        34: .line 102
      StackMap locals:
      StackMap stack:
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
        35: iload 10 /* j */
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            if_icmplt 30
        end local 10 // int j
        36: .line 107
            aload 0 /* this */
            aload 6 /* dst */
            aload 9 /* inflate1 */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        37: .line 110
            aload 3 /* tms */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* str */
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.invokeCode:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast char[]
            astore 10 /* inflate2 */
        start local 10 // char[] inflate2
        38: .line 111
            aload 0 /* this */
            aload 6 /* dst */
            aload 10 /* inflate2 */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 10 // char[] inflate2
        end local 9 // char[] inflate1
        end local 8 // java.lang.String str
        end local 7 // java.lang.Object nil
        end local 6 // char[] dst
        end local 5 // byte[] src
        39: .line 76
            iinc 4 /* i */ 1
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class java.lang.Class org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods int
      StackMap stack:
        40: iload 4 /* i */
            sipush 1000
            if_icmplt 8
        end local 4 // int i
        41: .line 113
            return
        end local 3 // org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods tms
        end local 2 // java.lang.Class testclass
        end local 1 // java.lang.Class javaclass
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   42     0       this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            1   42     1  javaclass  Ljava/lang/Class<*>;
            2   42     2  testclass  Ljava/lang/Class<*>;
            5   42     3        tms  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest$TestMethods;
            7   41     4          i  I
            9   39     5        src  [B
           10   39     6        dst  [C
           11   39     7        nil  Ljava/lang/Object;
           13   21     8          j  I
           22   39     8        str  Ljava/lang/String;
           23   27     9          j  I
           28   39     9   inflate1  [C
           29   36    10          j  I
           38   39    10   inflate2  [C
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.UnsupportedEncodingException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testStringLatin1InflateByteByte();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=17, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 117
            ldc "java.lang.StringLatin1"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* javaclass */
        start local 1 // java.lang.Class javaclass
         1: .line 119
            aload 0 /* this */
            aload 1 /* javaclass */
            ldc "inflate"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
            ldc [B
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc [B
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getResolvedJavaMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 2 /* caller */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
         2: .line 120
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            aload 2 /* caller */
            getstatic org.graalvm.compiler.core.common.CompilationIdentifier.INVALID_COMPILATION_ID:Lorg/graalvm/compiler/core/common/CompilationRequestIdentifier;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getDebugContext:()Lorg/graalvm/compiler/debug/DebugContext;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.YES:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            aconst_null
            invokeinterface org.graalvm.compiler.nodes.spi.Replacements.getIntrinsicGraph:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;Lorg/graalvm/compiler/nodes/Cancellable;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 121
            aload 3 /* graph */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringLatin1InflateNode;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertInGraph:(Lorg/graalvm/compiler/nodes/StructuredGraph;[Ljava/lang/Class;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            pop
         4: .line 123
            aload 0 /* this */
            aload 2 /* caller */
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/StructuredGraph;)Ljdk/vm/ci/code/InstalledCode;
            astore 4 /* code */
        start local 4 // jdk.vm.ci.code.InstalledCode code
         5: .line 125
            iconst_0
            istore 5 /* dstOffset */
        start local 5 // int dstOffset
         6: goto 37
         7: .line 126
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int
      StackMap stack:
            iconst_0
            istore 6 /* srcOffset */
        start local 6 // int srcOffset
         8: goto 35
         9: .line 127
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        10: goto 33
        11: .line 128
      StackMap locals: int
      StackMap stack:
            iload 7 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            istore 8 /* length */
        start local 8 // int length
        12: .line 129
            iload 8 /* length */
            newarray 8
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.fillLatinBytes:([B)[B
            astore 9 /* src */
        start local 9 // byte[] src
        13: .line 130
            iload 8 /* length */
            iconst_2
            imul
            istore 10 /* resultLength */
        start local 10 // int resultLength
        14: .line 131
            iload 10 /* resultLength */
            newarray 8
            astore 11 /* dst */
        start local 11 // byte[] dst
        15: .line 132
            iconst_0
            iload 8 /* length */
            iload 5 /* dstOffset */
            iload 6 /* srcOffset */
            invokestatic java.lang.Math.max:(II)I
            isub
            invokestatic java.lang.Math.max:(II)I
            istore 12 /* copiedLength */
        start local 12 // int copiedLength
        16: .line 133
            iload 5 /* dstOffset */
            iload 12 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 13 /* dstDelta */
        start local 13 // int dstDelta
        17: .line 134
            iload 6 /* srcOffset */
            iload 12 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 14 /* srcDelta */
        start local 14 // int srcDelta
        18: .line 135
            aload 0 /* this */
            aload 2 /* caller */
            aconst_null
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 14 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 11 /* dst */
            aastore
            dup
            iconst_3
            iload 13 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 12 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 138
            iconst_0
            istore 15 /* j */
        start local 15 // int j
        20: goto 28
        21: .line 139
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int int byte[] int byte[] int int int int
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 22
            aload 11 /* dst */
            iload 15 /* j */
            iconst_2
            imul
            iconst_1
            iadd
            iload 13 /* dstDelta */
            iconst_2
            imul
            iadd
            baload
            ifeq 22
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        22: .line 140
      StackMap locals:
      StackMap stack:
            aload 11 /* dst */
            iload 15 /* j */
            iconst_2
            imul
            iload 13 /* dstDelta */
            iconst_2
            imul
            iadd
            baload
            sipush 255
            iand
            istore 16 /* c */
        start local 16 // int c
        23: .line 141
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 26
            bipush 32
            iload 16 /* c */
            if_icmpgt 24
            iload 16 /* c */
            bipush 126
            if_icmple 26
      StackMap locals: int
      StackMap stack:
        24: sipush 160
            iload 16 /* c */
            if_icmpgt 25
            iload 16 /* c */
            sipush 255
            if_icmple 26
      StackMap locals:
      StackMap stack:
        25: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        26: .line 142
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 27
            iload 16 /* c */
            aload 9 /* src */
            iload 15 /* j */
            iload 14 /* srcDelta */
            iadd
            baload
            sipush 255
            iand
            if_icmpeq 27
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 16 // int c
        27: .line 138
      StackMap locals:
      StackMap stack:
            iinc 15 /* j */ 1
      StackMap locals:
      StackMap stack:
        28: iload 15 /* j */
            iload 12 /* copiedLength */
            if_icmplt 21
        end local 15 // int j
        29: .line 145
            iload 10 /* resultLength */
            newarray 8
            astore 15 /* dst2 */
        start local 15 // byte[] dst2
        30: .line 146
            aload 4 /* code */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 14 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 15 /* dst2 */
            aastore
            dup
            iconst_3
            iload 13 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 12 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.executeVarargsSafe:(Ljdk/vm/ci/code/InstalledCode;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 147
            aload 0 /* this */
            aload 11 /* dst */
            aload 15 /* dst2 */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 15 // byte[] dst2
        end local 14 // int srcDelta
        end local 13 // int dstDelta
        end local 12 // int copiedLength
        end local 11 // byte[] dst
        end local 10 // int resultLength
        end local 9 // byte[] src
        end local 8 // int length
        32: .line 127
            iinc 7 /* i */ 1
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int
      StackMap stack:
        33: iload 7 /* i */
            sipush 1000
            if_icmplt 11
        end local 7 // int i
        34: .line 126
            iinc 6 /* srcOffset */ 1
      StackMap locals:
      StackMap stack:
        35: iload 6 /* srcOffset */
            iconst_2
            if_icmplt 9
        end local 6 // int srcOffset
        36: .line 125
            iinc 5 /* dstOffset */ 1
      StackMap locals:
      StackMap stack:
        37: iload 5 /* dstOffset */
            iconst_2
            if_icmplt 7
        end local 5 // int dstOffset
        38: .line 151
            return
        end local 4 // jdk.vm.ci.code.InstalledCode code
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
        end local 1 // java.lang.Class javaclass
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   39     0          this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            1   39     1     javaclass  Ljava/lang/Class<*>;
            2   39     2        caller  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            3   39     3         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5   39     4          code  Ljdk/vm/ci/code/InstalledCode;
            6   38     5     dstOffset  I
            8   36     6     srcOffset  I
           10   34     7             i  I
           12   32     8        length  I
           13   32     9           src  [B
           14   32    10  resultLength  I
           15   32    11           dst  [B
           16   32    12  copiedLength  I
           17   32    13      dstDelta  I
           18   32    14      srcDelta  I
           20   29    15             j  I
           23   27    16             c  I
           30   32    15          dst2  [B
    Exceptions:
      throws java.lang.ClassNotFoundException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testStringLatin1InflateByteChar();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=16, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 155
            ldc "java.lang.StringLatin1"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* javaclass */
        start local 1 // java.lang.Class javaclass
         1: .line 157
            aload 0 /* this */
            aload 1 /* javaclass */
            ldc "inflate"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
            ldc [B
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc [C
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getResolvedJavaMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 2 /* caller */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
         2: .line 158
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            aload 2 /* caller */
            getstatic org.graalvm.compiler.core.common.CompilationIdentifier.INVALID_COMPILATION_ID:Lorg/graalvm/compiler/core/common/CompilationRequestIdentifier;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getDebugContext:()Lorg/graalvm/compiler/debug/DebugContext;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.YES:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            aconst_null
            invokeinterface org.graalvm.compiler.nodes.spi.Replacements.getIntrinsicGraph:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;Lorg/graalvm/compiler/nodes/Cancellable;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 159
            aload 3 /* graph */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringLatin1InflateNode;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertInGraph:(Lorg/graalvm/compiler/nodes/StructuredGraph;[Ljava/lang/Class;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            pop
         4: .line 161
            aload 0 /* this */
            aload 2 /* caller */
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/StructuredGraph;)Ljdk/vm/ci/code/InstalledCode;
            astore 4 /* code */
        start local 4 // jdk.vm.ci.code.InstalledCode code
         5: .line 163
            iconst_0
            istore 5 /* dstOffset */
        start local 5 // int dstOffset
         6: goto 35
         7: .line 164
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int
      StackMap stack:
            iconst_0
            istore 6 /* srcOffset */
        start local 6 // int srcOffset
         8: goto 33
         9: .line 165
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        10: goto 31
        11: .line 166
      StackMap locals: int
      StackMap stack:
            iload 7 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            istore 8 /* length */
        start local 8 // int length
        12: .line 167
            iload 8 /* length */
            newarray 8
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.fillLatinBytes:([B)[B
            astore 9 /* src */
        start local 9 // byte[] src
        13: .line 168
            iload 8 /* length */
            newarray 5
            astore 10 /* dst */
        start local 10 // char[] dst
        14: .line 169
            iconst_0
            iload 8 /* length */
            iload 5 /* dstOffset */
            iload 6 /* srcOffset */
            invokestatic java.lang.Math.max:(II)I
            isub
            invokestatic java.lang.Math.max:(II)I
            istore 11 /* copiedLength */
        start local 11 // int copiedLength
        15: .line 170
            iload 5 /* dstOffset */
            iload 11 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 12 /* dstDelta */
        start local 12 // int dstDelta
        16: .line 171
            iload 6 /* srcOffset */
            iload 11 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 13 /* srcDelta */
        start local 13 // int srcDelta
        17: .line 172
            aload 0 /* this */
            aload 2 /* caller */
            aconst_null
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 13 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 10 /* dst */
            aastore
            dup
            iconst_3
            iload 12 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 11 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 175
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        19: goto 26
        20: .line 176
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int int byte[] char[] int int int int
      StackMap stack:
            aload 10 /* dst */
            iload 14 /* j */
            iload 12 /* dstDelta */
            iadd
            caload
            sipush 255
            iand
            istore 15 /* c */
        start local 15 // int c
        21: .line 177
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 24
            bipush 32
            iload 15 /* c */
            if_icmpgt 22
            iload 15 /* c */
            bipush 126
            if_icmple 24
      StackMap locals: int
      StackMap stack:
        22: sipush 160
            iload 15 /* c */
            if_icmpgt 23
            iload 15 /* c */
            sipush 255
            if_icmple 24
      StackMap locals:
      StackMap stack:
        23: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        24: .line 178
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 25
            iload 15 /* c */
            aload 9 /* src */
            iload 14 /* j */
            iload 13 /* srcDelta */
            iadd
            baload
            sipush 255
            iand
            if_icmpeq 25
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 15 // int c
        25: .line 175
      StackMap locals:
      StackMap stack:
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        26: iload 14 /* j */
            iload 11 /* copiedLength */
            if_icmplt 20
        end local 14 // int j
        27: .line 181
            iload 8 /* length */
            newarray 5
            astore 14 /* dst2 */
        start local 14 // char[] dst2
        28: .line 182
            aload 4 /* code */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 13 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 14 /* dst2 */
            aastore
            dup
            iconst_3
            iload 12 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 11 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.executeVarargsSafe:(Ljdk/vm/ci/code/InstalledCode;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 183
            aload 0 /* this */
            aload 10 /* dst */
            aload 14 /* dst2 */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 14 // char[] dst2
        end local 13 // int srcDelta
        end local 12 // int dstDelta
        end local 11 // int copiedLength
        end local 10 // char[] dst
        end local 9 // byte[] src
        end local 8 // int length
        30: .line 165
            iinc 7 /* i */ 1
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int
      StackMap stack:
        31: iload 7 /* i */
            sipush 1000
            if_icmplt 11
        end local 7 // int i
        32: .line 164
            iinc 6 /* srcOffset */ 1
      StackMap locals:
      StackMap stack:
        33: iload 6 /* srcOffset */
            iconst_2
            if_icmplt 9
        end local 6 // int srcOffset
        34: .line 163
            iinc 5 /* dstOffset */ 1
      StackMap locals:
      StackMap stack:
        35: iload 5 /* dstOffset */
            iconst_2
            if_icmplt 7
        end local 5 // int dstOffset
        36: .line 187
            return
        end local 4 // jdk.vm.ci.code.InstalledCode code
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
        end local 1 // java.lang.Class javaclass
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   37     0          this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            1   37     1     javaclass  Ljava/lang/Class<*>;
            2   37     2        caller  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            3   37     3         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5   37     4          code  Ljdk/vm/ci/code/InstalledCode;
            6   36     5     dstOffset  I
            8   34     6     srcOffset  I
           10   32     7             i  I
           12   30     8        length  I
           13   30     9           src  [B
           14   30    10           dst  [C
           15   30    11  copiedLength  I
           16   30    12      dstDelta  I
           17   30    13      srcDelta  I
           19   27    14             j  I
           21   25    15             c  I
           28   30    14          dst2  [C
    Exceptions:
      throws java.lang.ClassNotFoundException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testStringUTF16Compress();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=10, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 191
            ldc "java.lang.StringUTF16"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* javaclass */
        start local 1 // java.lang.Class javaclass
         1: .line 192
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringUTF16CompressNode;
            astore 2 /* testclass */
        start local 2 // java.lang.Class testclass
         2: .line 193
            new org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods
            dup
            aload 0 /* this */
            ldc "testCompress"
            aload 1 /* javaclass */
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringUTF16CompressNode;
            ldc "compress"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
         3: .line 194
            ldc [C
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc [B
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
         4: .line 193
            aastore
            invokespecial org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.<init>:(Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)V
            astore 3 /* tms */
        start local 3 // org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods tms
         5: .line 195
            aload 3 /* tms */
            aload 2 /* testclass */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.testSubstitution:(Ljava/lang/Class;)V
         6: .line 197
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         7: goto 17
         8: .line 198
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class java.lang.Class org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods int
      StackMap stack:
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            newarray 5
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.fillLatinChars:([C)[C
            astore 5 /* src */
        start local 5 // char[] src
         9: .line 199
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            newarray 8
            astore 6 /* dst */
        start local 6 // byte[] dst
        10: .line 202
            aload 3 /* tms */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* src */
            aastore
            dup
            iconst_1
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 6 /* dst */
            aastore
            dup
            iconst_3
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.invokeJava:([Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* len */
        start local 7 // java.lang.Object len
        11: .line 204
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 12
            aload 7 /* len */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iload 4 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            if_icmpeq 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 207
      StackMap locals: char[] byte[] java.lang.Object
      StackMap stack:
            aload 3 /* tms */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* src */
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.invokeTest:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* str1 */
        start local 8 // java.lang.String str1
        13: .line 209
            aload 0 /* this */
            aload 6 /* dst */
            aload 8 /* str1 */
            ldc "ISO8859_1"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        14: .line 212
            aload 3 /* tms */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* src */
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods.invokeCode:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 9 /* str2 */
        start local 9 // java.lang.String str2
        15: .line 214
            aload 0 /* this */
            aload 6 /* dst */
            aload 9 /* str2 */
            ldc "ISO8859_1"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 9 // java.lang.String str2
        end local 8 // java.lang.String str1
        end local 7 // java.lang.Object len
        end local 6 // byte[] dst
        end local 5 // char[] src
        16: .line 197
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 4 /* i */
            sipush 1000
            if_icmplt 8
        end local 4 // int i
        18: .line 216
            return
        end local 3 // org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods tms
        end local 2 // java.lang.Class testclass
        end local 1 // java.lang.Class javaclass
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            1   19     1  javaclass  Ljava/lang/Class<*>;
            2   19     2  testclass  Ljava/lang/Class<*>;
            5   19     3        tms  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest$TestMethods;
            7   18     4          i  I
            9   16     5        src  [C
           10   16     6        dst  [B
           11   16     7        len  Ljava/lang/Object;
           13   16     8       str1  Ljava/lang/String;
           15   16     9       str2  Ljava/lang/String;
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.UnsupportedEncodingException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testStringUTF16CompressByteByte();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=16, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 220
            ldc "java.lang.StringUTF16"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* javaclass */
        start local 1 // java.lang.Class javaclass
         1: .line 222
            aload 0 /* this */
            aload 1 /* javaclass */
            ldc "compress"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
            ldc [B
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc [B
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getResolvedJavaMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 2 /* caller */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
         2: .line 223
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            aload 2 /* caller */
            getstatic org.graalvm.compiler.core.common.CompilationIdentifier.INVALID_COMPILATION_ID:Lorg/graalvm/compiler/core/common/CompilationRequestIdentifier;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getDebugContext:()Lorg/graalvm/compiler/debug/DebugContext;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.YES:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            aconst_null
            invokeinterface org.graalvm.compiler.nodes.spi.Replacements.getIntrinsicGraph:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;Lorg/graalvm/compiler/nodes/Cancellable;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 224
            aload 3 /* graph */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringUTF16CompressNode;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertInGraph:(Lorg/graalvm/compiler/nodes/StructuredGraph;[Ljava/lang/Class;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            pop
         4: .line 226
            aload 0 /* this */
            aload 2 /* caller */
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/StructuredGraph;)Ljdk/vm/ci/code/InstalledCode;
            astore 4 /* code */
        start local 4 // jdk.vm.ci.code.InstalledCode code
         5: .line 228
            iconst_0
            istore 5 /* dstOffset */
        start local 5 // int dstOffset
         6: goto 35
         7: .line 229
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int
      StackMap stack:
            iconst_0
            istore 6 /* srcOffset */
        start local 6 // int srcOffset
         8: goto 33
         9: .line 230
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        10: goto 31
        11: .line 231
      StackMap locals: int
      StackMap stack:
            iload 7 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            istore 8 /* length */
        start local 8 // int length
        12: .line 232
            iload 8 /* length */
            iconst_2
            imul
            newarray 8
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.fillLatinChars:([B)[B
            astore 9 /* src */
        start local 9 // byte[] src
        13: .line 233
            iload 8 /* length */
            newarray 8
            astore 10 /* dst */
        start local 10 // byte[] dst
        14: .line 234
            iconst_0
            iload 8 /* length */
            iload 5 /* dstOffset */
            iload 6 /* srcOffset */
            invokestatic java.lang.Math.max:(II)I
            isub
            invokestatic java.lang.Math.max:(II)I
            istore 11 /* copiedLength */
        start local 11 // int copiedLength
        15: .line 235
            iload 5 /* dstOffset */
            iload 11 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 12 /* dstDelta */
        start local 12 // int dstDelta
        16: .line 236
            iload 6 /* srcOffset */
            iload 11 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 13 /* srcDelta */
        start local 13 // int srcDelta
        17: .line 237
            aload 0 /* this */
            aload 2 /* caller */
            aconst_null
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 13 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 10 /* dst */
            aastore
            dup
            iconst_3
            iload 12 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 11 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 240
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        19: goto 26
        20: .line 241
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int int byte[] byte[] int int int int
      StackMap stack:
            aload 10 /* dst */
            iload 14 /* j */
            iload 12 /* dstDelta */
            iadd
            baload
            sipush 255
            iand
            istore 15 /* c */
        start local 15 // int c
        21: .line 242
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 24
            bipush 32
            iload 15 /* c */
            if_icmpgt 22
            iload 15 /* c */
            bipush 126
            if_icmple 24
      StackMap locals: int
      StackMap stack:
        22: sipush 160
            iload 15 /* c */
            if_icmpgt 23
            iload 15 /* c */
            sipush 255
            if_icmple 24
      StackMap locals:
      StackMap stack:
        23: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        24: .line 243
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 25
            iload 15 /* c */
            aload 9 /* src */
            iload 14 /* j */
            iload 13 /* srcDelta */
            iadd
            iconst_2
            imul
            baload
            sipush 255
            iand
            if_icmpeq 25
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 15 // int c
        25: .line 240
      StackMap locals:
      StackMap stack:
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        26: iload 14 /* j */
            iload 11 /* copiedLength */
            if_icmplt 20
        end local 14 // int j
        27: .line 246
            iload 8 /* length */
            newarray 8
            astore 14 /* dst2 */
        start local 14 // byte[] dst2
        28: .line 247
            aload 4 /* code */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 13 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 14 /* dst2 */
            aastore
            dup
            iconst_3
            iload 12 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 11 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.executeVarargsSafe:(Ljdk/vm/ci/code/InstalledCode;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 248
            aload 0 /* this */
            aload 10 /* dst */
            aload 14 /* dst2 */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 14 // byte[] dst2
        end local 13 // int srcDelta
        end local 12 // int dstDelta
        end local 11 // int copiedLength
        end local 10 // byte[] dst
        end local 9 // byte[] src
        end local 8 // int length
        30: .line 230
            iinc 7 /* i */ 1
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int
      StackMap stack:
        31: iload 7 /* i */
            sipush 1000
            if_icmplt 11
        end local 7 // int i
        32: .line 229
            iinc 6 /* srcOffset */ 1
      StackMap locals:
      StackMap stack:
        33: iload 6 /* srcOffset */
            iconst_2
            if_icmplt 9
        end local 6 // int srcOffset
        34: .line 228
            iinc 5 /* dstOffset */ 1
      StackMap locals:
      StackMap stack:
        35: iload 5 /* dstOffset */
            iconst_2
            if_icmplt 7
        end local 5 // int dstOffset
        36: .line 252
            return
        end local 4 // jdk.vm.ci.code.InstalledCode code
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
        end local 1 // java.lang.Class javaclass
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   37     0          this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            1   37     1     javaclass  Ljava/lang/Class<*>;
            2   37     2        caller  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            3   37     3         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5   37     4          code  Ljdk/vm/ci/code/InstalledCode;
            6   36     5     dstOffset  I
            8   34     6     srcOffset  I
           10   32     7             i  I
           12   30     8        length  I
           13   30     9           src  [B
           14   30    10           dst  [B
           15   30    11  copiedLength  I
           16   30    12      dstDelta  I
           17   30    13      srcDelta  I
           19   27    14             j  I
           21   25    15             c  I
           28   30    14          dst2  [B
    Exceptions:
      throws java.lang.ClassNotFoundException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testStringUTF16CompressCharByte();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=16, args_size=1
        start local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
         0: .line 256
            ldc "java.lang.StringUTF16"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 1 /* javaclass */
        start local 1 // java.lang.Class javaclass
         1: .line 258
            aload 0 /* this */
            aload 1 /* javaclass */
            ldc "compress"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
            ldc [C
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc [B
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getResolvedJavaMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 2 /* caller */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
         2: .line 259
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            aload 2 /* caller */
            getstatic org.graalvm.compiler.core.common.CompilationIdentifier.INVALID_COMPILATION_ID:Lorg/graalvm/compiler/core/common/CompilationRequestIdentifier;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getDebugContext:()Lorg/graalvm/compiler/debug/DebugContext;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.YES:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
            aconst_null
            invokeinterface org.graalvm.compiler.nodes.spi.Replacements.getIntrinsicGraph:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/core/common/CompilationIdentifier;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;Lorg/graalvm/compiler/nodes/Cancellable;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 260
            aload 3 /* graph */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64StringUTF16CompressNode;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertInGraph:(Lorg/graalvm/compiler/nodes/StructuredGraph;[Ljava/lang/Class;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            pop
         4: .line 262
            aload 0 /* this */
            aload 2 /* caller */
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/StructuredGraph;)Ljdk/vm/ci/code/InstalledCode;
            astore 4 /* code */
        start local 4 // jdk.vm.ci.code.InstalledCode code
         5: .line 264
            iconst_0
            istore 5 /* dstOffset */
        start local 5 // int dstOffset
         6: goto 35
         7: .line 265
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int
      StackMap stack:
            iconst_0
            istore 6 /* srcOffset */
        start local 6 // int srcOffset
         8: goto 33
         9: .line 266
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        10: goto 31
        11: .line 267
      StackMap locals: int
      StackMap stack:
            iload 7 /* i */
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.i2sz:(I)I
            istore 8 /* length */
        start local 8 // int length
        12: .line 268
            iload 8 /* length */
            newarray 5
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.fillLatinChars:([C)[C
            astore 9 /* src */
        start local 9 // char[] src
        13: .line 269
            iload 8 /* length */
            newarray 8
            astore 10 /* dst */
        start local 10 // byte[] dst
        14: .line 270
            iconst_0
            iload 8 /* length */
            iload 5 /* dstOffset */
            iload 6 /* srcOffset */
            invokestatic java.lang.Math.max:(II)I
            isub
            invokestatic java.lang.Math.max:(II)I
            istore 11 /* copiedLength */
        start local 11 // int copiedLength
        15: .line 271
            iload 5 /* dstOffset */
            iload 11 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 12 /* dstDelta */
        start local 12 // int dstDelta
        16: .line 272
            iload 6 /* srcOffset */
            iload 11 /* copiedLength */
            invokestatic java.lang.Math.min:(II)I
            istore 13 /* srcDelta */
        start local 13 // int srcDelta
        17: .line 273
            aload 0 /* this */
            aload 2 /* caller */
            aconst_null
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 13 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 10 /* dst */
            aastore
            dup
            iconst_3
            iload 12 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 11 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 276
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        19: goto 26
        20: .line 277
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int int char[] byte[] int int int int
      StackMap stack:
            aload 10 /* dst */
            iload 14 /* j */
            iload 12 /* dstDelta */
            iadd
            baload
            sipush 255
            iand
            istore 15 /* c */
        start local 15 // int c
        21: .line 278
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 24
            bipush 32
            iload 15 /* c */
            if_icmpgt 22
            iload 15 /* c */
            bipush 126
            if_icmple 24
      StackMap locals: int
      StackMap stack:
        22: sipush 160
            iload 15 /* c */
            if_icmpgt 23
            iload 15 /* c */
            sipush 255
            if_icmple 24
      StackMap locals:
      StackMap stack:
        23: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        24: .line 279
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.$assertionsDisabled:Z
            ifne 25
            iload 15 /* c */
            aload 9 /* src */
            iload 14 /* j */
            iload 13 /* srcDelta */
            iadd
            caload
            sipush 255
            iand
            if_icmpeq 25
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 15 // int c
        25: .line 276
      StackMap locals:
      StackMap stack:
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        26: iload 14 /* j */
            iload 11 /* copiedLength */
            if_icmplt 20
        end local 14 // int j
        27: .line 282
            iload 8 /* length */
            newarray 8
            astore 14 /* dst2 */
        start local 14 // byte[] dst2
        28: .line 283
            aload 4 /* code */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* src */
            aastore
            dup
            iconst_1
            iload 13 /* srcDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 14 /* dst2 */
            aastore
            dup
            iconst_3
            iload 12 /* dstDelta */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 11 /* copiedLength */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic org.graalvm.compiler.replacements.test.StringCompressInflateTest.executeVarargsSafe:(Ljdk/vm/ci/code/InstalledCode;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 284
            aload 0 /* this */
            aload 10 /* dst */
            aload 14 /* dst2 */
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 14 // byte[] dst2
        end local 13 // int srcDelta
        end local 12 // int dstDelta
        end local 11 // int copiedLength
        end local 10 // byte[] dst
        end local 9 // char[] src
        end local 8 // int length
        30: .line 266
            iinc 7 /* i */ 1
      StackMap locals: org.graalvm.compiler.replacements.test.StringCompressInflateTest java.lang.Class jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph jdk.vm.ci.code.InstalledCode int int int
      StackMap stack:
        31: iload 7 /* i */
            sipush 1000
            if_icmplt 11
        end local 7 // int i
        32: .line 265
            iinc 6 /* srcOffset */ 1
      StackMap locals:
      StackMap stack:
        33: iload 6 /* srcOffset */
            iconst_2
            if_icmplt 9
        end local 6 // int srcOffset
        34: .line 264
            iinc 5 /* dstOffset */ 1
      StackMap locals:
      StackMap stack:
        35: iload 5 /* dstOffset */
            iconst_2
            if_icmplt 7
        end local 5 // int dstOffset
        36: .line 288
            return
        end local 4 // jdk.vm.ci.code.InstalledCode code
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod caller
        end local 1 // java.lang.Class javaclass
        end local 0 // org.graalvm.compiler.replacements.test.StringCompressInflateTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   37     0          this  Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;
            1   37     1     javaclass  Ljava/lang/Class<*>;
            2   37     2        caller  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            3   37     3         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5   37     4          code  Ljdk/vm/ci/code/InstalledCode;
            6   36     5     dstOffset  I
            8   34     6     srcOffset  I
           10   32     7             i  I
           12   30     8        length  I
           13   30     9           src  [C
           14   30    10           dst  [B
           15   30    11  copiedLength  I
           16   30    12      dstDelta  I
           17   30    13      srcDelta  I
           19   27    14             j  I
           21   25    15             c  I
           28   30    14          dst2  [B
    Exceptions:
      throws java.lang.ClassNotFoundException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public static java.lang.String testCompress(char[]);
    descriptor: ([C)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // char[] a
         0: .line 292
            new java.lang.String
            dup
            aload 0 /* a */
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 0 // char[] a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  [C
    MethodParameters:
      Name  Flags
      a     

  public static char[] testInflate(java.lang.String);
    descriptor: (Ljava/lang/String;)[C
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String a
         0: .line 297
            aload 0 /* a */
            invokevirtual java.lang.String.toCharArray:()[C
            areturn
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      a     

  private static byte[] fillLatinBytes(byte[]);
    descriptor: ([B)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // byte[] v
         0: .line 352
            bipush 32
            istore 1 /* ch */
        start local 1 // int ch
         1: iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 9
         3: .line 353
      StackMap locals: int int
      StackMap stack:
            aload 0 /* v */
            iload 2 /* i */
            iload 1 /* ch */
            sipush 255
            iand
            i2b
            bastore
         4: .line 354
            iload 1 /* ch */
            bipush 126
            if_icmpne 5
            sipush 160
            goto 7
      StackMap locals:
      StackMap stack:
         5: iload 1 /* ch */
            sipush 255
            if_icmpne 6
            bipush 32
            goto 7
      StackMap locals:
      StackMap stack:
         6: iload 1 /* ch */
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
         7: istore 1 /* ch */
         8: .line 352
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* v */
            arraylength
            if_icmplt 3
        end local 2 // int i
        end local 1 // int ch
        10: .line 356
            aload 0 /* v */
            areturn
        end local 0 // byte[] v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     v  [B
            1   10     1    ch  I
            2   10     2     i  I
    MethodParameters:
      Name  Flags
      v     

  private static char[] fillLatinChars(char[]);
    descriptor: ([C)[C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // char[] v
         0: .line 360
            bipush 32
            istore 1 /* ch */
        start local 1 // int ch
         1: iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 9
         3: .line 361
      StackMap locals: int int
      StackMap stack:
            aload 0 /* v */
            iload 2 /* i */
            iload 1 /* ch */
            sipush 255
            iand
            i2c
            castore
         4: .line 362
            iload 1 /* ch */
            bipush 126
            if_icmpne 5
            sipush 160
            goto 7
      StackMap locals:
      StackMap stack:
         5: iload 1 /* ch */
            sipush 255
            if_icmpne 6
            bipush 32
            goto 7
      StackMap locals:
      StackMap stack:
         6: iload 1 /* ch */
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
         7: istore 1 /* ch */
         8: .line 360
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* v */
            arraylength
            if_icmplt 3
        end local 2 // int i
        end local 1 // int ch
        10: .line 364
            aload 0 /* v */
            areturn
        end local 0 // char[] v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     v  [C
            1   10     1    ch  I
            2   10     2     i  I
    MethodParameters:
      Name  Flags
      v     

  private static byte[] fillLatinChars(byte[]);
    descriptor: ([B)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // byte[] v
         0: .line 368
            bipush 32
            istore 1 /* ch */
        start local 1 // int ch
         1: iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 9
         3: .line 369
      StackMap locals: int int
      StackMap stack:
            aload 0 /* v */
            iload 2 /* i */
            iload 1 /* ch */
            sipush 255
            iand
            i2b
            bastore
         4: .line 370
            iload 1 /* ch */
            bipush 126
            if_icmpne 5
            sipush 160
            goto 7
      StackMap locals:
      StackMap stack:
         5: iload 1 /* ch */
            sipush 255
            if_icmpne 6
            bipush 32
            goto 7
      StackMap locals:
      StackMap stack:
         6: iload 1 /* ch */
            iconst_1
            iadd
      StackMap locals:
      StackMap stack: int
         7: istore 1 /* ch */
         8: .line 368
            iinc 2 /* i */ 2
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            aload 0 /* v */
            arraylength
            if_icmplt 3
        end local 2 // int i
        end local 1 // int ch
        10: .line 372
            aload 0 /* v */
            areturn
        end local 0 // byte[] v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     v  [B
            1   10     1    ch  I
            2   10     2     i  I
    MethodParameters:
      Name  Flags
      v     

  private static int i2sz(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int i
         0: .line 376
            iload 0 /* i */
            iconst_3
            imul
            ireturn
        end local 0 // int i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     i  I
    MethodParameters:
      Name  Flags
      i     

  static jdk.vm.ci.meta.ResolvedJavaMethod access$0(org.graalvm.compiler.replacements.test.StringCompressInflateTest, java.lang.Class, java.lang.String, java.lang.Class[]);
    descriptor: (Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getResolvedJavaMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static jdk.vm.ci.meta.ResolvedJavaMethod access$1(org.graalvm.compiler.replacements.test.StringCompressInflateTest, java.lang.String);
    descriptor: (Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getResolvedJavaMethod:(Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static org.graalvm.compiler.nodes.spi.Replacements access$2(org.graalvm.compiler.replacements.test.StringCompressInflateTest);
    descriptor: (Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;)Lorg/graalvm/compiler/nodes/spi/Replacements;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static org.graalvm.compiler.debug.DebugContext access$3(org.graalvm.compiler.replacements.test.StringCompressInflateTest);
    descriptor: (Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;)Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getDebugContext:()Lorg/graalvm/compiler/debug/DebugContext;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static jdk.vm.ci.code.InstalledCode access$4(org.graalvm.compiler.replacements.test.StringCompressInflateTest, jdk.vm.ci.meta.ResolvedJavaMethod);
    descriptor: (Lorg/graalvm/compiler/replacements/test/StringCompressInflateTest;Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/vm/ci/code/InstalledCode;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.graalvm.compiler.replacements.test.StringCompressInflateTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/vm/ci/code/InstalledCode;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "StringCompressInflateTest.java"
NestMembers:
  org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods
InnerClasses:
  public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph
  private TestMethods = org.graalvm.compiler.replacements.test.StringCompressInflateTest$TestMethods of org.graalvm.compiler.replacements.test.StringCompressInflateTest
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.test.AddExports(value = {"java.base/java.lang"})