public class sun.tools.tree.ConditionalExpression extends sun.tools.tree.BinaryExpression
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.tools.tree.ConditionalExpression
super_class: sun.tools.tree.BinaryExpression
{
sun.tools.tree.Expression cond;
descriptor: Lsun/tools/tree/Expression;
flags: (0x0000)
public void <init>(long, sun.tools.tree.Expression, sun.tools.tree.Expression, sun.tools.tree.Expression);
descriptor: (JLsun/tools/tree/Expression;Lsun/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 3 start local 4 start local 5 0: aload 0
bipush 13
lload 1
getstatic sun.tools.java.Type.tError: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: aload 0
aload 3
putfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
2: return
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tools/tree/ConditionalExpression;
0 3 1 where J
0 3 3 cond Lsun/tools/tree/Expression;
0 3 4 left Lsun/tools/tree/Expression;
0 3 5 right Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
where
cond
left
right
public sun.tools.tree.Expression order();
descriptor: ()Lsun/tools/tree/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.tools.tree.ConditionalExpression.precedence:()I
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.Expression.precedence:()I
if_icmple 5
1: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.UnaryExpression
astore 1
start local 1 2: aload 0
aload 1
getfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
3: aload 1
aload 0
invokevirtual sun.tools.tree.ConditionalExpression.order:()Lsun/tools/tree/Expression;
putfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
4: aload 1
areturn
end local 1 5: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/tools/tree/ConditionalExpression;
2 5 1 e Lsun/tools/tree/UnaryExpression;
public sun.tools.tree.Vset checkValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
invokevirtual sun.tools.tree.Expression.checkCondition:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/ConditionVars;
astore 5
start local 5 1: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 5
getfield sun.tools.tree.ConditionVars.vsTrue:Lsun/tools/tree/Vset;
aload 4
invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
2: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 5
getfield sun.tools.tree.ConditionVars.vsFalse:Lsun/tools/tree/Vset;
aload 4
invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
3: invokevirtual sun.tools.tree.Vset.join:(Lsun/tools/tree/Vset;)Lsun/tools/tree/Vset;
astore 3
4: aload 0
aload 0
aload 1
aload 2
getstatic sun.tools.java.Type.tBoolean:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.ConditionalExpression.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.ConditionalExpression.cond:Lsun/tools/tree/Expression;
5: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Type.getTypeMask:()I
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Type.getTypeMask:()I
ior
istore 6
start local 6 6: iload 6
sipush 8192
iand
ifeq 9
7: aload 0
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
8: aload 3
areturn
9: StackMap locals: sun.tools.tree.ConditionVars int
StackMap stack:
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 12
10: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
11: goto 40
StackMap locals:
StackMap stack:
12: iload 6
sipush 128
iand
ifeq 15
13: aload 0
getstatic sun.tools.java.Type.tDouble:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
14: goto 40
StackMap locals:
StackMap stack:
15: iload 6
bipush 64
iand
ifeq 18
16: aload 0
getstatic sun.tools.java.Type.tFloat:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
17: goto 40
StackMap locals:
StackMap stack:
18: iload 6
bipush 32
iand
ifeq 21
19: aload 0
getstatic sun.tools.java.Type.tLong:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
20: goto 40
StackMap locals:
StackMap stack:
21: iload 6
sipush 1792
iand
ifeq 30
22: aload 0
aload 1
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Environment.implicitCast:(Lsun/tools/java/Type;Lsun/tools/java/Type;)Z
ifeq 24
23: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
goto 25
StackMap locals:
StackMap stack: sun.tools.tree.ConditionalExpression
24: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
25: StackMap locals: sun.tools.tree.ConditionalExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.ConditionVars int
StackMap stack: sun.tools.tree.ConditionalExpression sun.tools.java.Type
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
26: goto 40
StackMap locals:
StackMap stack: sun.tools.java.ClassNotFound
27: pop
28: aload 0
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
29: goto 40
StackMap locals:
StackMap stack:
30: iload 6
iconst_4
iand
ifeq 33
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
getstatic sun.tools.java.Type.tChar:Lsun/tools/java/Type;
invokevirtual sun.tools.tree.Expression.fitsType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;)Z
ifeq 33
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
getstatic sun.tools.java.Type.tChar:Lsun/tools/java/Type;
invokevirtual sun.tools.tree.Expression.fitsType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;)Z
ifeq 33
31: aload 0
getstatic sun.tools.java.Type.tChar:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
32: goto 40
StackMap locals:
StackMap stack:
33: iload 6
bipush 8
iand
ifeq 36
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
getstatic sun.tools.java.Type.tShort:Lsun/tools/java/Type;
invokevirtual sun.tools.tree.Expression.fitsType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;)Z
ifeq 36
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
getstatic sun.tools.java.Type.tShort:Lsun/tools/java/Type;
invokevirtual sun.tools.tree.Expression.fitsType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;)Z
ifeq 36
34: aload 0
getstatic sun.tools.java.Type.tShort:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
35: goto 40
StackMap locals:
StackMap stack:
36: iload 6
iconst_2
iand
ifeq 39
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
getstatic sun.tools.java.Type.tByte:Lsun/tools/java/Type;
invokevirtual sun.tools.tree.Expression.fitsType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;)Z
ifeq 39
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
getstatic sun.tools.java.Type.tByte:Lsun/tools/java/Type;
invokevirtual sun.tools.tree.Expression.fitsType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;)Z
ifeq 39
37: aload 0
getstatic sun.tools.java.Type.tByte:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
38: goto 40
39: StackMap locals:
StackMap stack:
aload 0
getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
putfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
40: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 1
aload 2
aload 0
getfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.ConditionalExpression.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.ConditionalExpression.left:Lsun/tools/tree/Expression;
41: aload 0
aload 0
aload 1
aload 2
aload 0
getfield sun.tools.tree.ConditionalExpression.type:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.ConditionalExpression.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.ConditionalExpression.right:Lsun/tools/tree/Expression;
42: aload 3
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 43 0 this Lsun/tools/tree/ConditionalExpression;
0 43 1 env Lsun/tools/java/Environment;
0 43 2 ctx Lsun/tools/tree/Context;
0 43 3 vset Lsun/tools/tree/Vset;
0 43 4 exp Ljava/util/Hashtable;
1 43 5 cvars Lsun/tools/tree/ConditionVars;
6 43 6 tm I
Exception table:
from to target type
22 26 27 Class sun.tools.java.ClassNotFound
MethodParameters:
Name Flags
env
ctx
vset
exp
public sun.tools.tree.Vset check(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
astore 3
1: aload 0
aload 0
aload 1
aload 2
getstatic sun.tools.java.Type.tBoolean:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.ConditionalExpression.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.ConditionalExpression.cond:Lsun/tools/tree/Expression;
2: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Vset.copy:()Lsun/tools/tree/Vset;
aload 4
invokevirtual sun.tools.tree.Expression.check:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
invokevirtual sun.tools.tree.Expression.check:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
invokevirtual sun.tools.tree.Vset.join:(Lsun/tools/tree/Vset;)Lsun/tools/tree/Vset;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tools/tree/ConditionalExpression;
0 3 1 env Lsun/tools/java/Environment;
0 3 2 ctx Lsun/tools/tree/Context;
0 3 3 vset Lsun/tools/tree/Vset;
0 3 4 exp Ljava/util/Hashtable;
MethodParameters:
Name Flags
env
ctx
vset
exp
public boolean isConstant();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.Expression.isConstant:()Z
ifeq 1
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.Expression.isConstant:()Z
ifeq 1
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.Expression.isConstant:()Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tools/tree/ConditionalExpression;
sun.tools.tree.Expression simplify();
descriptor: ()Lsun/tools/tree/Expression;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
iconst_1
invokevirtual sun.tools.tree.Expression.equals:(Z)Z
ifeq 2
1: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
iconst_0
invokevirtual sun.tools.tree.Expression.equals:(Z)Z
ifeq 4
3: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
areturn
4: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tools/tree/ConditionalExpression;
public sun.tools.tree.Expression inline(sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
1: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
2: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
ifnonnull 4
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
ifnonnull 4
3: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
ifnonnull 8
5: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
6: aload 0
aconst_null
putfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
7: aload 0
new sun.tools.tree.NotExpression
dup
aload 0
getfield sun.tools.tree.ConditionalExpression.where:J
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
invokespecial sun.tools.tree.NotExpression.<init>:(JLsun/tools/tree/Expression;)V
putfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
8: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
9: aload 0
invokevirtual sun.tools.tree.ConditionalExpression.simplify:()Lsun/tools/tree/Expression;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/tools/tree/ConditionalExpression;
0 10 1 env Lsun/tools/java/Environment;
0 10 2 ctx Lsun/tools/tree/Context;
MethodParameters:
Name Flags
env
ctx
public sun.tools.tree.Expression inlineValue(sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
1: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
2: aload 0
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
3: aload 0
invokevirtual sun.tools.tree.ConditionalExpression.simplify:()Lsun/tools/tree/Expression;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/tools/tree/ConditionalExpression;
0 4 1 env Lsun/tools/java/Environment;
0 4 2 ctx Lsun/tools/tree/Context;
MethodParameters:
Name Flags
env
ctx
public int costInline(int, sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_1
1: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
iload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
2: iadd
3: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
iload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
4: iadd
5: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
ifnonnull 6
iconst_0
goto 7
StackMap locals:
StackMap stack: int
6: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
iload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
7: StackMap locals: sun.tools.tree.ConditionalExpression int sun.tools.java.Environment sun.tools.tree.Context
StackMap stack: int int
iadd
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/tools/tree/ConditionalExpression;
0 8 1 thresh I
0 8 2 env Lsun/tools/java/Environment;
0 8 3 ctx Lsun/tools/tree/Context;
MethodParameters:
Name Flags
thresh
env
ctx
public sun.tools.tree.Expression copyInline(sun.tools.tree.Context);
descriptor: (Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.tools.tree.ConditionalExpression.clone:()Ljava/lang/Object;
checkcast sun.tools.tree.ConditionalExpression
astore 2
start local 2 1: aload 2
aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
2: aload 2
aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
3: aload 2
aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
ifnonnull 4
aconst_null
goto 5
StackMap locals: sun.tools.tree.ConditionalExpression sun.tools.tree.Context sun.tools.tree.ConditionalExpression
StackMap stack: sun.tools.tree.ConditionalExpression
4: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
StackMap locals: sun.tools.tree.ConditionalExpression sun.tools.tree.Context sun.tools.tree.ConditionalExpression
StackMap stack: sun.tools.tree.ConditionalExpression sun.tools.tree.Expression
5: putfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/tools/tree/ConditionalExpression;
0 7 1 ctx Lsun/tools/tree/Context;
1 7 2 e Lsun/tools/tree/ConditionalExpression;
MethodParameters:
Name Flags
ctx
public void codeValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new sun.tools.asm.Label
dup
invokespecial sun.tools.asm.Label.<init>:()V
astore 4
start local 4 1: new sun.tools.asm.Label
dup
invokespecial sun.tools.asm.Label.<init>:()V
astore 5
start local 5 2: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
iconst_0
invokevirtual sun.tools.tree.Expression.codeBranch:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;Lsun/tools/asm/Label;Z)V
3: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.codeValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
4: aload 3
aload 0
getfield sun.tools.tree.ConditionalExpression.where:J
sipush 167
aload 5
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
5: aload 3
aload 4
invokevirtual sun.tools.asm.Assembler.add:(Lsun/tools/asm/Instruction;)V
6: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.codeValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
7: aload 3
aload 5
invokevirtual sun.tools.asm.Assembler.add:(Lsun/tools/asm/Instruction;)V
8: return
end local 5 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 Lsun/tools/tree/ConditionalExpression;
0 9 1 env Lsun/tools/java/Environment;
0 9 2 ctx Lsun/tools/tree/Context;
0 9 3 asm Lsun/tools/asm/Assembler;
1 9 4 l1 Lsun/tools/asm/Label;
2 9 5 l2 Lsun/tools/asm/Label;
MethodParameters:
Name Flags
env
ctx
asm
public void code(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new sun.tools.asm.Label
dup
invokespecial sun.tools.asm.Label.<init>:()V
astore 4
start local 4 1: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
iconst_0
invokevirtual sun.tools.tree.Expression.codeBranch:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;Lsun/tools/asm/Label;Z)V
2: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.code:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
3: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
ifnull 10
4: new sun.tools.asm.Label
dup
invokespecial sun.tools.asm.Label.<init>:()V
astore 5
start local 5 5: aload 3
aload 0
getfield sun.tools.tree.ConditionalExpression.where:J
sipush 167
aload 5
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
6: aload 3
aload 4
invokevirtual sun.tools.asm.Assembler.add:(Lsun/tools/asm/Instruction;)V
7: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.code:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
8: aload 3
aload 5
invokevirtual sun.tools.asm.Assembler.add:(Lsun/tools/asm/Instruction;)V
end local 5 9: goto 11
10: StackMap locals: sun.tools.asm.Label
StackMap stack:
aload 3
aload 4
invokevirtual sun.tools.asm.Assembler.add:(Lsun/tools/asm/Instruction;)V
11: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/tools/tree/ConditionalExpression;
0 12 1 env Lsun/tools/java/Environment;
0 12 2 ctx Lsun/tools/tree/Context;
0 12 3 asm Lsun/tools/asm/Assembler;
1 12 4 l1 Lsun/tools/asm/Label;
5 9 5 l2 Lsun/tools/asm/Label;
MethodParameters:
Name Flags
env
ctx
asm
public void print(java.io.PrintStream);
descriptor: (Ljava/io/PrintStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic sun.tools.tree.ConditionalExpression.opNames:[Ljava/lang/String;
aload 0
getfield sun.tools.tree.ConditionalExpression.op:I
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
1: aload 0
getfield sun.tools.tree.ConditionalExpression.cond:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
2: aload 1
ldc " "
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
3: aload 0
getfield sun.tools.tree.ConditionalExpression.left:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
4: aload 1
ldc " "
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
5: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
ifnull 8
6: aload 0
getfield sun.tools.tree.ConditionalExpression.right:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
7: goto 9
8: StackMap locals:
StackMap stack:
aload 1
ldc "<null>"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
9: StackMap locals:
StackMap stack:
aload 1
ldc ")"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/tools/tree/ConditionalExpression;
0 11 1 out Ljava/io/PrintStream;
MethodParameters:
Name Flags
out
}
SourceFile: "ConditionalExpression.java"