public class sun.tools.tree.BinaryShiftExpression extends sun.tools.tree.BinaryExpression
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.tools.tree.BinaryShiftExpression
super_class: sun.tools.tree.BinaryExpression
{
public void <init>(int, long, sun.tools.tree.Expression, sun.tools.tree.Expression);
descriptor: (IJLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 5 0: aload 0
iload 1
lload 2
aload 4
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
aload 4
aload 5
invokespecial sun.tools.tree.BinaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
1: return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tools/tree/BinaryShiftExpression;
0 2 1 op I
0 2 2 where J
0 2 4 left Lsun/tools/tree/Expression;
0 2 5 right Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
op
where
left
right
sun.tools.tree.Expression eval();
descriptor: ()Lsun/tools/tree/Expression;
flags: (0x0000)
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.tree.BinaryShiftExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.op:I
bipush 66
if_icmpne 4
aload 0
getfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.op:I
bipush 65
if_icmpne 4
1: aload 0
aload 0
getfield sun.tools.tree.BinaryShiftExpression.left:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.LongExpression
getfield sun.tools.tree.LongExpression.value:J
2: aload 0
getfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.IntExpression
getfield sun.tools.tree.IntExpression.value:I
i2l
3: invokevirtual sun.tools.tree.BinaryShiftExpression.eval:(JJ)Lsun/tools/tree/Expression;
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokespecial sun.tools.tree.BinaryExpression.eval:()Lsun/tools/tree/Expression;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tools/tree/BinaryShiftExpression;
void selectType(sun.tools.java.Environment, sun.tools.tree.Context, int);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;I)V
flags: (0x0000)
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.tools.tree.BinaryShiftExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
getstatic sun.tools.java.Type.tLong:Lsun/tools/java/Type;
if_acmpne 3
1: aload 0
getstatic sun.tools.java.Type.tLong:Lsun/tools/java/Type;
putfield sun.tools.tree.BinaryShiftExpression.type:Lsun/tools/java/Type;
2: goto 8
StackMap locals:
StackMap stack:
3: aload 0
getfield sun.tools.tree.BinaryShiftExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
bipush 62
invokevirtual sun.tools.java.Type.inMask:(I)Z
ifeq 7
4: aload 0
getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
putfield sun.tools.tree.BinaryShiftExpression.type:Lsun/tools/java/Type;
5: aload 0
aload 0
aload 1
aload 2
aload 0
getfield sun.tools.tree.BinaryShiftExpression.type:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.BinaryShiftExpression.left:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.BinaryShiftExpression.convert:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;Lsun/tools/tree/Expression;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.BinaryShiftExpression.left:Lsun/tools/tree/Expression;
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
putfield sun.tools.tree.BinaryShiftExpression.type:Lsun/tools/java/Type;
8: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
bipush 62
invokevirtual sun.tools.java.Type.inMask:(I)Z
ifeq 11
9: aload 0
new sun.tools.tree.ConvertExpression
dup
aload 0
getfield sun.tools.tree.BinaryShiftExpression.where:J
getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
invokespecial sun.tools.tree.ConvertExpression.<init>:(JLsun/tools/java/Type;Lsun/tools/tree/Expression;)V
putfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
10: goto 12
11: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 1
aload 2
getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.BinaryShiftExpression.convert:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;Lsun/tools/tree/Expression;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.BinaryShiftExpression.right:Lsun/tools/tree/Expression;
12: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/tools/tree/BinaryShiftExpression;
0 13 1 env Lsun/tools/java/Environment;
0 13 2 ctx Lsun/tools/tree/Context;
0 13 3 tm I
MethodParameters:
Name Flags
env
ctx
tm
}
SourceFile: "BinaryShiftExpression.java"