public class org.graalvm.compiler.truffle.test.ArrayUtilsTest extends org.graalvm.compiler.core.test.GraalCompilerTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.ArrayUtilsTest
super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
private static final java.lang.String[] strings;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String[] searchValues;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.String haystack;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int fromIndex;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int maxIndex;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String needle;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: iconst_4
anewarray java.lang.String
dup
iconst_0
1: ldc "L"
aastore
dup
iconst_1
2: ldc "Lorem ipsum dolor sit amet, cons0"
aastore
dup
iconst_2
3: ldc "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed dia0"
aastore
dup
iconst_3
4: ldc "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, \u0000 sed diam voluptua. At vero \uFFFF eos et accusam et justo duo dolores 0"
aastore
5: putstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.strings:[Ljava/lang/String;
6: bipush 8
anewarray java.lang.String
dup
iconst_0
7: ldc "L"
aastore
dup
iconst_1
8: ldc "0"
aastore
dup
iconst_2
9: ldc "t"
aastore
dup
iconst_3
10: ldc "X0"
aastore
dup
iconst_4
11: ldc "LX"
aastore
dup
iconst_5
12: ldc "XYL"
aastore
dup
bipush 6
13: ldc "XLYZ"
aastore
dup
bipush 7
14: ldc "VXY0"
aastore
15: putstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
16: return
LocalVariableTable:
Start End Slot Name Signature
protected void registerInvocationPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.compiler.amd64.substitutions.TruffleAMD64InvocationPlugins
dup
invokespecial org.graalvm.compiler.truffle.compiler.amd64.substitutions.TruffleAMD64InvocationPlugins.<init>:()V
aload 0
invokevirtual org.graalvm.compiler.truffle.test.ArrayUtilsTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
aload 0
invokevirtual org.graalvm.compiler.truffle.test.ArrayUtilsTest.getBackend:()Lorg/graalvm/compiler/core/target/Backend;
invokevirtual org.graalvm.compiler.core.target.Backend.getTarget:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
aload 1
iconst_1
invokevirtual org.graalvm.compiler.truffle.compiler.amd64.substitutions.TruffleAMD64InvocationPlugins.registerInvocationPlugins:(Lorg/graalvm/compiler/phases/util/Providers;Ljdk/vm/ci/code/Architecture;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
1: aload 0
aload 1
invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.registerInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/truffle/test/ArrayUtilsTest;
0 3 1 invocationPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
MethodParameters:
Name Flags
invocationPlugins
public static java.lang.Iterable<java.lang.Object[]> data();
descriptor: ()Ljava/lang/Iterable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=11, args_size=0
0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 0
start local 0 1: getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.strings:[Ljava/lang/String;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 9
StackMap locals: java.util.ArrayList top int int java.lang.String[]
StackMap stack:
2: aload 4
iload 2
aaload
astore 1
start local 1 3: getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 7
StackMap locals: java.util.ArrayList java.lang.String int int java.lang.String[] top int int java.lang.String[]
StackMap stack:
4: aload 8
iload 6
aaload
astore 5
start local 5 5: aload 0
aload 1
aload 5
invokestatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.addTests:(Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;)V
end local 5 6: iinc 6 1
StackMap locals:
StackMap stack:
7: iload 6
iload 7
if_icmplt 4
end local 1 8: iinc 2 1
StackMap locals: java.util.ArrayList top int int java.lang.String[]
StackMap stack:
9: iload 2
iload 3
if_icmplt 2
10: aload 0
getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
arraylength
iconst_1
isub
aaload
ldc "\u0000"
invokestatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.addTests:(Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;)V
11: aload 0
getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
arraylength
iconst_1
isub
aaload
ldc "\uFFFF"
invokestatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.addTests:(Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;)V
12: getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.strings:[Ljava/lang/String;
iconst_1
aaload
astore 1
start local 1 13: getstatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.searchValues:[Ljava/lang/String;
iconst_0
aaload
astore 2
start local 2 14: iconst_3
newarray 10
dup
iconst_0
iconst_m1
iastore
dup
iconst_2
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
iadd
iastore
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 22
StackMap locals: java.util.ArrayList java.lang.String java.lang.String top int int int[]
StackMap stack:
15: aload 6
iload 4
iaload
istore 3
start local 3 16: iconst_4
newarray 10
dup
iconst_0
iconst_m1
iastore
dup
iconst_2
aload 1
invokevirtual java.lang.String.length:()I
iastore
dup
iconst_3
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
iadd
iastore
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 20
StackMap locals: java.util.ArrayList java.lang.String java.lang.String int int int int[] top int int int[]
StackMap stack:
17: aload 10
iload 8
iaload
istore 7
start local 7 18: aload 0
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
iload 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 2
aastore
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 7 19: iinc 8 1
StackMap locals:
StackMap stack:
20: iload 8
iload 9
if_icmplt 17
end local 3 21: iinc 4 1
StackMap locals: java.util.ArrayList java.lang.String java.lang.String top int int int[]
StackMap stack:
22: iload 4
iload 5
if_icmplt 15
23: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 24 0 parameters Ljava/util/ArrayList<[Ljava/lang/Object;>;
3 8 1 str Ljava/lang/String;
5 6 5 sv Ljava/lang/String;
13 24 1 str Ljava/lang/String;
14 24 2 sv Ljava/lang/String;
16 21 3 maxIndex I
18 19 7 fromIndex I
Signature: ()Ljava/lang/Iterable<[Ljava/lang/Object;>;
RuntimeVisibleAnnotations:
org.junit.runners.Parameterized$Parameters(name = "{index}: haystack {0} fromIndex {1} maxIndex {2} needle {3}")
private static void addTests(java.util.ArrayList<java.lang.Object[]>, java.lang.String, java.lang.String);
descriptor: (Ljava/util/ArrayList;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=11, args_size=3
start local 0 start local 1 start local 2 0: iconst_2
newarray 10
dup
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
iastore
dup
iconst_1
aload 1
invokevirtual java.lang.String.length:()I
iastore
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 9
StackMap locals: java.util.ArrayList java.lang.String java.lang.String top int int int[]
StackMap stack:
1: aload 6
iload 4
iaload
istore 3
start local 3 2: bipush 9
newarray 10
dup
iconst_1
bipush 15
iastore
dup
iconst_2
bipush 16
iastore
dup
iconst_3
bipush 17
iastore
dup
iconst_4
bipush 31
iastore
dup
iconst_5
bipush 32
iastore
dup
bipush 6
bipush 33
iastore
dup
bipush 7
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
iastore
dup
bipush 8
aload 1
invokevirtual java.lang.String.length:()I
iastore
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 7
StackMap locals: java.util.ArrayList java.lang.String java.lang.String int int int int[] top int int int[]
StackMap stack:
3: aload 10
iload 8
iaload
istore 7
start local 7 4: iload 7
iload 3
if_icmpge 6
5: aload 0
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
iload 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 2
aastore
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 7 6: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
7: iload 8
iload 9
if_icmplt 3
end local 3 8: iinc 4 1
StackMap locals: java.util.ArrayList java.lang.String java.lang.String top int int int[]
StackMap stack:
9: iload 4
iload 5
if_icmplt 1
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 parameters Ljava/util/ArrayList<[Ljava/lang/Object;>;
0 11 1 str Ljava/lang/String;
0 11 2 sv Ljava/lang/String;
2 8 3 maxIndex I
4 6 7 fromIndex I
Signature: (Ljava/util/ArrayList<[Ljava/lang/Object;>;Ljava/lang/String;Ljava/lang/String;)V
MethodParameters:
Name Flags
parameters
str
sv
public void <init>(java.lang.String, int, int, java.lang.String);
descriptor: (Ljava/lang/String;IILjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.<init>:()V
1: aload 0
aload 1
putfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.haystack:Ljava/lang/String;
2: aload 0
iload 2
putfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.fromIndex:I
3: aload 0
iload 3
putfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.maxIndex:I
4: aload 0
aload 4
putfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.needle:Ljava/lang/String;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/truffle/test/ArrayUtilsTest;
0 6 1 haystack Ljava/lang/String;
0 6 2 fromIndex I
0 6 3 maxIndex I
0 6 4 needle Ljava/lang/String;
MethodParameters:
Name Flags
haystack
fromIndex
maxIndex
needle
public void testString();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "indexOfString"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.haystack:Ljava/lang/String;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.fromIndex:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.maxIndex:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.needle:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
aastore
invokevirtual org.graalvm.compiler.truffle.test.ArrayUtilsTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/ArrayUtilsTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testCharArray();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "indexOfCharArray"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.haystack:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.fromIndex:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.maxIndex:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.needle:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
aastore
invokevirtual org.graalvm.compiler.truffle.test.ArrayUtilsTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/ArrayUtilsTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testByteArray();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "indexOfByteArray"
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.haystack:Ljava/lang/String;
invokestatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.toByteArray:(Ljava/lang/String;)[B
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.fromIndex:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.maxIndex:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
aload 0
getfield org.graalvm.compiler.truffle.test.ArrayUtilsTest.needle:Ljava/lang/String;
invokestatic org.graalvm.compiler.truffle.test.ArrayUtilsTest.toByteArray:(Ljava/lang/String;)[B
aastore
invokevirtual org.graalvm.compiler.truffle.test.ArrayUtilsTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/truffle/test/ArrayUtilsTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int indexOfString(java.lang.String, int, int, char[]);
descriptor: (Ljava/lang/String;II[C)I
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
invokestatic com.oracle.truffle.api.ArrayUtils.indexOf:(Ljava/lang/String;II[C)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 haystack Ljava/lang/String;
0 1 1 fromIndex I
0 1 2 maxIndex I
0 1 3 needle [C
MethodParameters:
Name Flags
haystack
fromIndex
maxIndex
needle
public static int indexOfCharArray(char[], int, int, char[]);
descriptor: ([CII[C)I
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
invokestatic com.oracle.truffle.api.ArrayUtils.indexOf:([CII[C)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 haystack [C
0 1 1 fromIndex I
0 1 2 maxIndex I
0 1 3 needle [C
MethodParameters:
Name Flags
haystack
fromIndex
maxIndex
needle
public static int indexOfByteArray(byte[], int, int, byte[]);
descriptor: ([BII[B)I
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
invokestatic com.oracle.truffle.api.ArrayUtils.indexOf:([BII[B)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 haystack [B
0 1 1 fromIndex I
0 1 2 maxIndex I
0 1 3 needle [B
MethodParameters:
Name Flags
haystack
fromIndex
maxIndex
needle
private static byte[] toByteArray(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
newarray 8
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: byte[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
i2b
bastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
invokevirtual java.lang.String.length:()I
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 s Ljava/lang/String;
1 7 1 ret [B
2 6 2 i I
MethodParameters:
Name Flags
s
}
SourceFile: "ArrayUtilsTest.java"
InnerClasses:
public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
public abstract Parameters = org.junit.runners.Parameterized$Parameters of org.junit.runners.Parameterized
RuntimeVisibleAnnotations:
org.junit.runner.RunWith(value = Lorg/junit/runners/Parameterized;)