public class org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest extends org.graalvm.compiler.lir.jtt.LIRTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest
super_class: org.graalvm.compiler.lir.jtt.LIRTest
{
private static final java.util.function.Predicate<org.graalvm.compiler.lir.LIRInstruction> checkForBitTestAndBranchOp;
descriptor: Ljava/util/function/Predicate;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/LIRInstruction;>;
private org.graalvm.compiler.lir.LIR lir;
descriptor: Lorg/graalvm/compiler/lir/LIR;
flags: (0x0002) ACC_PRIVATE
private static final org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec largeOpSingleNop;
descriptor: Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec largeOpFourNop;
descriptor: Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final float trueTarget;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3.4028235E38
private static final float falseTarget;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1.4E-45
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest.lambda$0(Lorg/graalvm/compiler/lir/LIRInstruction;)Z (6)
(Lorg/graalvm/compiler/lir/LIRInstruction;)Z
putstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
1: new org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec
dup
sipush 4086
iconst_2
invokespecial org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec.<init>:(II)V
putstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.largeOpSingleNop:Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
2: new org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec
dup
sipush 4086
bipush 8
invokespecial org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec.<init>:(II)V
putstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.largeOpFourNop:Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
3: 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 0: aload 0
invokespecial org.graalvm.compiler.lir.jtt.LIRTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
public void checkAArch64();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc "skipping AArch64 specific test"
aload 0
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.getTarget:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
instanceof jdk.vm.ci.aarch64.AArch64
invokestatic org.junit.Assume.assumeTrue:(Ljava/lang/String;Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public static long testBit42Snippet(long, long, long);
descriptor: (JJJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 2 start local 4 0: lload 0
ldc 4398046511104
land
lconst_0
lcmp
ifne 2
1: lload 2
lload 4
ladd
lreturn
2: StackMap locals:
StackMap stack:
lload 4
lreturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
0 3 2 b J
0 3 4 c J
MethodParameters:
Name Flags
a
b
c
public void testBit42();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "testBit42Snippet"
iconst_3
anewarray java.lang.Object
dup
iconst_0
ldc 4398046511104
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
ldc 9223372036854775807
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_2
ldc -9223372036854775808
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: aload 0
ldc "testBit42Snippet"
iconst_3
anewarray java.lang.Object
dup
iconst_0
ldc -4398046511105
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
ldc 9223372036854775807
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_2
ldc -9223372036854775808
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
2: aload 0
ldc "testBit42Snippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_1
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int testBitTestAndBranchSingleSnippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
iconst_2
irem
ifne 3
1: getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.largeOpSingleNop:Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
iconst_1
invokestatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.fillOps:(Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;I)I
istore 1
start local 1 2: goto 4
end local 1 3: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.largeOpSingleNop:Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
iconst_2
invokestatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.fillOps:(Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;I)I
istore 1
start local 1 4: StackMap locals: int
StackMap stack:
iload 1
invokestatic org.graalvm.compiler.api.directives.GraalDirectives.opaque:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 a I
2 3 1 res I
4 5 1 res I
MethodParameters:
Name Flags
a
public void testBitTestAndBranchSingle();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "testBitTestAndBranchSingleSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.runTest:(Ljava/lang/String;[Ljava/lang/Object;)V
1: aload 0
ldc "testBitTestAndBranchSingleSnippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_1
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int testBitTestAndBranchFourSnippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
iconst_2
irem
ifne 3
1: getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.largeOpFourNop:Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
iconst_1
invokestatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.fillOps:(Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;I)I
istore 1
start local 1 2: goto 4
end local 1 3: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.largeOpFourNop:Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
iconst_2
invokestatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.fillOps:(Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;I)I
istore 1
start local 1 4: StackMap locals: int
StackMap stack:
iload 1
invokestatic org.graalvm.compiler.api.directives.GraalDirectives.opaque:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 a I
2 3 1 res I
4 5 1 res I
MethodParameters:
Name Flags
a
public void testBitTestAndBranchFour();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "testBitTestAndBranchFourSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.runTest:(Ljava/lang/String;[Ljava/lang/Object;)V
1: aload 0
ldc "testBitTestAndBranchFourSnippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_1
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static float testLessThanZeroSnippet(long, long);
descriptor: (JJ)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: lload 2
lload 0
ladd
lload 2
lsub
lconst_0
lcmp
ifge 2
1: ldc 3.4028235E38
lload 0
l2f
fsub
freturn
2: StackMap locals:
StackMap stack:
ldc 1.4E-45
lload 0
l2f
fadd
freturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
0 3 2 b J
MethodParameters:
Name Flags
a
b
public void testLessThanZero();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "testLessThanZeroSnippet"
iconst_2
anewarray java.lang.Object
dup
iconst_0
lconst_1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
ldc 777
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: aload 0
ldc "testLessThanZeroSnippet"
iconst_2
anewarray java.lang.Object
dup
iconst_0
lconst_0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
ldc 777
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
2: aload 0
ldc "testLessThanZeroSnippet"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc -1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
ldc 777
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
3: aload 0
ldc "testLessThanZeroSnippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_1
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static float testLessThanEqualZeroSnippet(long);
descriptor: (J)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
lconst_0
lcmp
ifgt 2
1: ldc 3.4028235E38
lload 0
l2f
fsub
freturn
2: StackMap locals:
StackMap stack:
ldc 1.4E-45
lload 0
l2f
fadd
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
MethodParameters:
Name Flags
a
public void testLessThanEqualZero();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
ldc "testLessThanEqualZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
lconst_1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: aload 0
ldc "testLessThanEqualZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
lconst_0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
2: aload 0
ldc "testLessThanEqualZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc -1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
3: aload 0
ldc "testLessThanEqualZeroSnippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_0
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static float testGreaterThanZeroSnippet(int);
descriptor: (I)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
ifle 2
1: ldc 3.4028235E38
iload 0
i2f
fsub
freturn
2: StackMap locals:
StackMap stack:
ldc 1.4E-45
iload 0
i2f
fadd
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
MethodParameters:
Name Flags
a
public void testGreaterThanZero();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "testGreaterThanZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: aload 0
ldc "testGreaterThanZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
2: aload 0
ldc "testGreaterThanZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_m1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
3: aload 0
ldc "testGreaterThanZeroSnippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_0
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static float testGreaterThanEqualZeroSnippet(int);
descriptor: (I)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
iflt 2
1: ldc 3.4028235E38
iload 0
i2f
fsub
freturn
2: StackMap locals:
StackMap stack:
ldc 1.4E-45
iload 0
i2f
fadd
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
MethodParameters:
Name Flags
a
public void testGreaterThanEqualZero();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
ldc "testGreaterThanEqualZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
1: aload 0
ldc "testGreaterThanEqualZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
2: aload 0
ldc "testGreaterThanEqualZeroSnippet"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_m1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
pop
3: aload 0
ldc "testGreaterThanEqualZeroSnippet"
getstatic org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkForBitTestAndBranchOp:Ljava/util/function/Predicate;
iconst_1
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.checkLIR:(Ljava/lang/String;Ljava/util/function/Predicate;I)V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
RuntimeVisibleAnnotations:
org.junit.Test()
public static int fillOps(org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec, int);
descriptor: (Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest$LargeOpSpec;
0 1 1 a I
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.jtt.LIRTest$LIRIntrinsic()
MethodParameters:
Name Flags
s
a
protected org.graalvm.compiler.lir.phases.LIRSuites createLIRSuites(org.graalvm.compiler.options.OptionValues);
descriptor: (Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/lir/phases/LIRSuites;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.graalvm.compiler.lir.jtt.LIRTest.createLIRSuites:(Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/lir/phases/LIRSuites;
astore 2
start local 2 1: aload 2
invokevirtual org.graalvm.compiler.lir.phases.LIRSuites.getPreAllocationOptimizationStage:()Lorg/graalvm/compiler/lir/phases/LIRPhaseSuite;
new org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$CheckPhase
dup
aload 0
invokespecial org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$CheckPhase.<init>:(Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;)V
invokevirtual org.graalvm.compiler.lir.phases.LIRPhaseSuite.appendPhase:(Lorg/graalvm/compiler/lir/phases/LIRPhase;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
0 3 1 options Lorg/graalvm/compiler/options/OptionValues;
1 3 2 suites Lorg/graalvm/compiler/lir/phases/LIRSuites;
MethodParameters:
Name Flags
options
protected void checkLIR(java.lang.String, java.util.function.Predicate<org.graalvm.compiler.lir.LIRInstruction>, );
descriptor: (Ljava/lang/String;Ljava/util/function/Predicate;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.getResolvedJavaMethod:(Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
aconst_null
invokevirtual org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.compile:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/code/CompilationResult;
pop
1: iconst_0
istore 4
start local 4 2: aload 0
getfield org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.lir:Lorg/graalvm/compiler/lir/LIR;
aload 0
getfield org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest.lir:Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.codeEmittingOrder:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
iconst_0
aaload
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest java.lang.String java.util.function.Predicate int int top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 5
start local 5 4: aload 2
aload 5
invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
ifeq 6
5: iinc 4 1
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: iload 3
i2l
iload 4
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/core/aarch64/test/AArch64TestBitAndBranchTest;
0 9 1 methodName Ljava/lang/String;
0 9 2 predicate Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/LIRInstruction;>;
0 9 3 expected I
2 9 4 actualOpNum I
4 6 5 ins Lorg/graalvm/compiler/lir/LIRInstruction;
Signature: (Ljava/lang/String;Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/LIRInstruction;>;I)V
MethodParameters:
Name Flags
methodName
predicate
expected
private static boolean lambda$0(org.graalvm.compiler.lir.LIRInstruction);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BitTestAndBranchOp
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 op Lorg/graalvm/compiler/lir/LIRInstruction;
}
SourceFile: "AArch64TestBitAndBranchTest.java"
NestMembers:
org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$CheckPhase org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$NoOp
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public CheckPhase = org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$CheckPhase of org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest
private LargeOpSpec = org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$LargeOpSpec of org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest
public NoOp = org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest$NoOp of org.graalvm.compiler.core.aarch64.test.AArch64TestBitAndBranchTest
public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
public BitTestAndBranchOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BitTestAndBranchOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
public abstract LIRIntrinsic = org.graalvm.compiler.lir.jtt.LIRTest$LIRIntrinsic of org.graalvm.compiler.lir.jtt.LIRTest
public final PreAllocationOptimizationContext = org.graalvm.compiler.lir.phases.PreAllocationOptimizationPhase$PreAllocationOptimizationContext of org.graalvm.compiler.lir.phases.PreAllocationOptimizationPhase