public class sun.jvm.hotspot.tools.soql.SOQL extends sun.jvm.hotspot.tools.Tool
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.tools.soql.SOQL
super_class: sun.jvm.hotspot.tools.Tool
{
protected sun.jvm.hotspot.utilities.soql.SOQLEngine soqlEngine;
descriptor: Lsun/jvm/hotspot/utilities/soql/SOQLEngine;
flags: (0x0004) ACC_PROTECTED
protected java.io.BufferedReader in;
descriptor: Ljava/io/BufferedReader;
flags: (0x0004) ACC_PROTECTED
protected java.io.PrintStream out;
descriptor: Ljava/io/PrintStream;
flags: (0x0004) ACC_PROTECTED
protected static java.lang.String prompt;
descriptor: Ljava/lang/String;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
protected static java.lang.String secondPrompt;
descriptor: Ljava/lang/String;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "soql> "
putstatic sun.jvm.hotspot.tools.soql.SOQL.prompt:Ljava/lang/String;
1: ldc "> "
putstatic sun.jvm.hotspot.tools.soql.SOQL.secondPrompt:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new sun.jvm.hotspot.tools.soql.SOQL
dup
invokespecial sun.jvm.hotspot.tools.soql.SOQL.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.execute:([Ljava/lang/String;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 args [Ljava/lang/String;
1 3 1 soql Lsun/jvm/hotspot/tools/soql/SOQL;
MethodParameters:
Name Flags
args
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
invokespecial sun.jvm.hotspot.tools.Tool.<init>:()V
1: aload 0
new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
getstatic java.lang.System.in:Ljava/io/InputStream;
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
putfield sun.jvm.hotspot.tools.soql.SOQL.in:Ljava/io/BufferedReader;
2: aload 0
getstatic java.lang.System.out:Ljava/io/PrintStream;
putfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
public void <init>(sun.jvm.hotspot.debugger.JVMDebugger);
descriptor: (Lsun/jvm/hotspot/debugger/JVMDebugger;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.jvm.hotspot.tools.Tool.<init>:(Lsun/jvm/hotspot/debugger/JVMDebugger;)V
1: aload 0
new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
getstatic java.lang.System.in:Ljava/io/InputStream;
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
putfield sun.jvm.hotspot.tools.soql.SOQL.in:Ljava/io/BufferedReader;
2: aload 0
getstatic java.lang.System.out:Ljava/io/PrintStream;
putfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 4 1 d Lsun/jvm/hotspot/debugger/JVMDebugger;
MethodParameters:
Name Flags
d
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokestatic sun.jvm.hotspot.utilities.soql.SOQLEngine.getEngine:()Lsun/jvm/hotspot/utilities/soql/SOQLEngine;
putfield sun.jvm.hotspot.tools.soql.SOQL.soqlEngine:Lsun/jvm/hotspot/utilities/soql/SOQLEngine;
1: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
getstatic sun.jvm.hotspot.tools.soql.SOQL.prompt:Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
2: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.in:Ljava/io/BufferedReader;
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 1
start local 1 3: aload 1
ifnonnull 5
4: return
5: StackMap locals: java.lang.String
StackMap stack:
new java.util.StringTokenizer
dup
aload 1
invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;)V
astore 2
start local 2 6: aload 2
invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
ifeq 1
7: aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
astore 3
start local 3 8: aload 3
ldc "select"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
9: aload 0
aload 1
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.handleSelect:(Ljava/lang/String;)V
10: goto 1
StackMap locals: java.util.StringTokenizer java.lang.String
StackMap stack:
11: aload 3
ldc "classes"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
12: aload 0
aload 1
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.handleClasses:(Ljava/lang/String;)V
13: goto 1
StackMap locals:
StackMap stack:
14: aload 3
ldc "class"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 17
15: aload 0
aload 1
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.handleClass:(Ljava/lang/String;)V
16: goto 1
StackMap locals:
StackMap stack:
17: aload 3
ldc "object"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
18: aload 0
aload 1
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.handleObject:(Ljava/lang/String;)V
19: goto 1
StackMap locals:
StackMap stack:
20: aload 3
ldc "quit"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 23
21: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "Bye!"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
22: return
23: StackMap locals:
StackMap stack:
aload 3
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 1
24: aload 0
aload 1
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.handleUnknown:(Ljava/lang/String;)V
end local 3 end local 2 end local 1 25: goto 1
StackMap locals: sun.jvm.hotspot.tools.soql.SOQL
StackMap stack: java.io.IOException
26: astore 1
start local 1 27: aload 1
invokevirtual java.io.IOException.printStackTrace:()V
28: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
3 25 1 line Ljava/lang/String;
6 25 2 st Ljava/util/StringTokenizer;
8 25 3 cmd Ljava/lang/String;
27 29 1 e Ljava/io/IOException;
Exception table:
from to target type
1 4 26 Class java.io.IOException
5 22 26 Class java.io.IOException
23 25 26 Class java.io.IOException
protected void handleSelect(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: new java.lang.StringBuffer
dup
aload 1
invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: StackMap locals: java.lang.StringBuffer java.lang.String
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
getstatic sun.jvm.hotspot.tools.soql.SOQL.secondPrompt:Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
3: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.in:Ljava/io/BufferedReader;
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 3
4: goto 7
StackMap locals:
StackMap stack: java.io.IOException
5: pop
6: goto 12
7: StackMap locals:
StackMap stack:
aload 3
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 12
aload 3
ldc "go"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
8: goto 12
9: StackMap locals:
StackMap stack:
aload 2
bipush 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
10: aload 2
aload 3
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
11: goto 2
12: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
astore 1
13: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.soqlEngine:Lsun/jvm/hotspot/utilities/soql/SOQLEngine;
aload 1
14: new sun.jvm.hotspot.tools.soql.SOQL$1
dup
aload 0
invokespecial sun.jvm.hotspot.tools.soql.SOQL$1.<init>:(Lsun/jvm/hotspot/tools/soql/SOQL;)V
15: invokevirtual sun.jvm.hotspot.utilities.soql.SOQLEngine.executeQuery:(Ljava/lang/String;Lsun/jvm/hotspot/utilities/soql/ObjectVisitor;)V
16: goto 19
StackMap locals:
StackMap stack: sun.jvm.hotspot.utilities.soql.SOQLException
17: astore 4
start local 4 18: aload 4
invokevirtual sun.jvm.hotspot.utilities.soql.SOQLException.printStackTrace:()V
end local 4 19: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 20 1 query Ljava/lang/String;
1 20 2 buf Ljava/lang/StringBuffer;
2 20 3 tmp Ljava/lang/String;
18 19 4 se Lsun/jvm/hotspot/utilities/soql/SOQLException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
13 16 17 Class sun.jvm.hotspot.utilities.soql.SOQLException
MethodParameters:
Name Flags
query
protected void handleClasses(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: invokestatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.getAllInstanceKlasses:()[Lsun/jvm/hotspot/oops/InstanceKlass;
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 7
3: StackMap locals: sun.jvm.hotspot.oops.InstanceKlass[] int
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
aload 2
iload 3
aaload
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
4: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc " @"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
5: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
aload 2
iload 3
aaload
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getAddress:()Lsun/jvm/hotspot/debugger/Address;
invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 2
arraylength
if_icmplt 3
end local 3 8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 9 1 line Ljava/lang/String;
1 9 2 klasses [Lsun/jvm/hotspot/oops/InstanceKlass;
2 8 3 i I
MethodParameters:
Name Flags
line
protected void handleClass(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=12, args_size=2
start local 0 start local 1 0: new java.util.StringTokenizer
dup
aload 1
invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
pop
2: aload 2
invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
ifeq 33
3: aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
astore 3
start local 3 4: aload 3
invokestatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.findInstanceKlass:(Ljava/lang/String;)Lsun/jvm/hotspot/oops/InstanceKlass;
astore 4
start local 4 5: aload 4
ifnonnull 8
6: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
7: goto 34
8: StackMap locals: java.util.StringTokenizer java.lang.String sun.jvm.hotspot.oops.InstanceKlass
StackMap stack:
aload 4
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getSuper:()Lsun/jvm/hotspot/oops/Klass;
checkcast sun.jvm.hotspot.oops.InstanceKlass
astore 5
start local 5 9: aload 5
ifnull 13
10: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "super"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
11: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "\t"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
12: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
aload 5
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
13: StackMap locals: sun.jvm.hotspot.oops.InstanceKlass
StackMap stack:
aload 4
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFields:()Lsun/jvm/hotspot/utilities/U2Array;
astore 6
start local 6 14: aload 6
invokevirtual sun.jvm.hotspot.utilities.U2Array.length:()I
istore 7
start local 7 15: aload 4
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getConstants:()Lsun/jvm/hotspot/oops/ConstantPool;
pop
16: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "fields"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
17: iload 7
ifeq 31
18: iconst_0
istore 8
start local 8 19: goto 29
20: StackMap locals: sun.jvm.hotspot.utilities.U2Array int int
StackMap stack:
aload 4
iload 8
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldName:(I)Lsun/jvm/hotspot/oops/Symbol;
astore 9
start local 9 21: aload 4
iload 8
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getFieldSignature:(I)Lsun/jvm/hotspot/oops/Symbol;
astore 10
start local 10 22: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 11
start local 11 23: new sun.jvm.hotspot.runtime.SignatureConverter
dup
aload 10
aload 11
invokespecial sun.jvm.hotspot.runtime.SignatureConverter.<init>:(Lsun/jvm/hotspot/oops/Symbol;Ljava/lang/StringBuffer;)V
invokevirtual sun.jvm.hotspot.runtime.SignatureConverter.dispatchField:()V
24: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
bipush 9
invokevirtual java.io.PrintStream.print:(C)V
25: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
aload 11
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
26: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
bipush 32
invokevirtual java.io.PrintStream.print:(C)V
27: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
aload 9
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 11 end local 10 end local 9 28: iinc 8 1
StackMap locals:
StackMap stack:
29: iload 8
iload 7
if_icmplt 20
end local 8 30: goto 34
31: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "\tno fields in this class"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 7 end local 6 end local 5 end local 4 end local 3 32: goto 34
33: StackMap locals: sun.jvm.hotspot.tools.soql.SOQL java.lang.String java.util.StringTokenizer
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "usage: class <name of the class>"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
34: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 35 1 line Ljava/lang/String;
1 35 2 st Ljava/util/StringTokenizer;
4 32 3 className Ljava/lang/String;
5 32 4 klass Lsun/jvm/hotspot/oops/InstanceKlass;
9 32 5 base Lsun/jvm/hotspot/oops/InstanceKlass;
14 32 6 fields Lsun/jvm/hotspot/utilities/U2Array;
15 32 7 numFields I
19 30 8 f I
21 28 9 f_name Lsun/jvm/hotspot/oops/Symbol;
22 28 10 f_sig Lsun/jvm/hotspot/oops/Symbol;
23 28 11 sigBuf Ljava/lang/StringBuffer;
MethodParameters:
Name Flags
line
protected sun.jvm.hotspot.oops.Oop getOopAtAddress(sun.jvm.hotspot.debugger.Address);
descriptor: (Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Oop;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
lconst_0
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetToAsOopHandle:(J)Lsun/jvm/hotspot/debugger/OopHandle;
astore 2
start local 2 1: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getObjectHeap:()Lsun/jvm/hotspot/oops/ObjectHeap;
aload 2
invokevirtual sun.jvm.hotspot.oops.ObjectHeap.newOop:(Lsun/jvm/hotspot/debugger/OopHandle;)Lsun/jvm/hotspot/oops/Oop;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 2 1 addr Lsun/jvm/hotspot/debugger/Address;
1 2 2 oopHandle Lsun/jvm/hotspot/debugger/OopHandle;
MethodParameters:
Name Flags
addr
protected void handleObject(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: new java.util.StringTokenizer
dup
aload 1
invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
pop
2: aload 2
invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
ifeq 21
3: aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
astore 3
start local 3 4: aconst_null
astore 4
start local 4 5: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getDebugger:()Lsun/jvm/hotspot/debugger/JVMDebugger;
astore 5
start local 5 6: aload 5
aload 3
invokeinterface sun.jvm.hotspot.debugger.Debugger.parseAddress:(Ljava/lang/String;)Lsun/jvm/hotspot/debugger/Address;
astore 4
7: goto 11
StackMap locals: sun.jvm.hotspot.tools.soql.SOQL java.lang.String java.util.StringTokenizer java.lang.String sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.debugger.Debugger
StackMap stack: java.lang.Exception
8: astore 6
start local 6 9: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "invalid address : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
10: return
end local 6 11: StackMap locals:
StackMap stack:
aconst_null
astore 6
start local 6 12: aload 0
aload 4
invokevirtual sun.jvm.hotspot.tools.soql.SOQL.getOopAtAddress:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Oop;
astore 6
13: goto 16
StackMap locals: sun.jvm.hotspot.tools.soql.SOQL java.lang.String java.util.StringTokenizer java.lang.String sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.debugger.Debugger sun.jvm.hotspot.oops.Oop
StackMap stack: java.lang.Exception
14: astore 7
start local 7 15: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "invalid object : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 7 16: StackMap locals:
StackMap stack:
aload 6
ifnull 19
17: aload 6
new sun.jvm.hotspot.oops.OopPrinter
dup
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
invokespecial sun.jvm.hotspot.oops.OopPrinter.<init>:(Ljava/io/PrintStream;)V
iconst_1
invokevirtual sun.jvm.hotspot.oops.Oop.iterate:(Lsun/jvm/hotspot/oops/OopVisitor;Z)V
18: goto 22
19: StackMap locals:
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "null object!"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 6 end local 5 end local 4 end local 3 20: goto 22
21: StackMap locals: sun.jvm.hotspot.tools.soql.SOQL java.lang.String java.util.StringTokenizer
StackMap stack:
aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "usage: object <address>"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
22: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 23 1 line Ljava/lang/String;
1 23 2 st Ljava/util/StringTokenizer;
4 20 3 addrStr Ljava/lang/String;
5 20 4 addr Lsun/jvm/hotspot/debugger/Address;
6 20 5 dbg Lsun/jvm/hotspot/debugger/Debugger;
9 11 6 e Ljava/lang/Exception;
12 20 6 oop Lsun/jvm/hotspot/oops/Oop;
15 16 7 e Ljava/lang/Exception;
Exception table:
from to target type
6 7 8 Class java.lang.Exception
12 13 14 Class java.lang.Exception
MethodParameters:
Name Flags
line
protected void handleUnknown(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.tools.soql.SOQL.out:Ljava/io/PrintStream;
ldc "Unknown command!"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/tools/soql/SOQL;
0 2 1 line Ljava/lang/String;
MethodParameters:
Name Flags
line
}
SourceFile: "SOQL.java"
NestMembers:
sun.jvm.hotspot.tools.soql.SOQL$1
InnerClasses:
sun.jvm.hotspot.tools.soql.SOQL$1