class sun.jvm.hotspot.debugger.linux.LinuxThreadContextFactory
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.jvm.hotspot.debugger.linux.LinuxThreadContextFactory
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.jvm.hotspot.debugger.linux.LinuxThreadContextFactory this
0: .line 34
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // sun.jvm.hotspot.debugger.linux.LinuxThreadContextFactory this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/debugger/linux/LinuxThreadContextFactory;
static sun.jvm.hotspot.debugger.ThreadContext createThreadContext(sun.jvm.hotspot.debugger.linux.LinuxDebugger);
descriptor: (Lsun/jvm/hotspot/debugger/linux/LinuxDebugger;)Lsun/jvm/hotspot/debugger/ThreadContext;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=1
start local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebugger dbg
0: .line 36
aload 0 /* dbg */
invokeinterface sun.jvm.hotspot.debugger.linux.LinuxDebugger.getCPU:()Ljava/lang/String;
astore 1 /* cpu */
start local 1 // java.lang.String cpu
1: .line 37
aload 1 /* cpu */
ldc "x86"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
2: .line 38
new sun.jvm.hotspot.debugger.linux.x86.LinuxX86ThreadContext
dup
aload 0 /* dbg */
invokespecial sun.jvm.hotspot.debugger.linux.x86.LinuxX86ThreadContext.<init>:(Lsun/jvm/hotspot/debugger/linux/LinuxDebugger;)V
areturn
3: .line 39
StackMap locals: java.lang.String
StackMap stack:
aload 1 /* cpu */
ldc "amd64"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: .line 40
new sun.jvm.hotspot.debugger.linux.amd64.LinuxAMD64ThreadContext
dup
aload 0 /* dbg */
invokespecial sun.jvm.hotspot.debugger.linux.amd64.LinuxAMD64ThreadContext.<init>:(Lsun/jvm/hotspot/debugger/linux/LinuxDebugger;)V
areturn
5: .line 41
StackMap locals:
StackMap stack:
aload 1 /* cpu */
ldc "sparc"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: .line 42
new sun.jvm.hotspot.debugger.linux.sparc.LinuxSPARCThreadContext
dup
aload 0 /* dbg */
invokespecial sun.jvm.hotspot.debugger.linux.sparc.LinuxSPARCThreadContext.<init>:(Lsun/jvm/hotspot/debugger/linux/LinuxDebugger;)V
areturn
7: .line 43
StackMap locals:
StackMap stack:
aload 1 /* cpu */
ldc "ppc64"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
8: .line 44
new sun.jvm.hotspot.debugger.linux.ppc64.LinuxPPC64ThreadContext
dup
aload 0 /* dbg */
invokespecial sun.jvm.hotspot.debugger.linux.ppc64.LinuxPPC64ThreadContext.<init>:(Lsun/jvm/hotspot/debugger/linux/LinuxDebugger;)V
areturn
9: .line 47
StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "sun.jvm.hotspot.debugger.linux."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
10: .line 48
aload 1 /* cpu */
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".Linux"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1 /* cpu */
invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: .line 49
ldc "ThreadContext"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: .line 47
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 2 /* tcc */
start local 2 // java.lang.Class tcc
13: .line 50
aload 2 /* tcc */
invokevirtual java.lang.Class.getConstructors:()[Ljava/lang/reflect/Constructor;
astore 3 /* ctcc */
start local 3 // java.lang.reflect.Constructor[] ctcc
14: .line 51
aload 3 /* ctcc */
iconst_0
aaload
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0 /* dbg */
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.jvm.hotspot.debugger.ThreadContext
15: areturn
end local 3 // java.lang.reflect.Constructor[] ctcc
end local 2 // java.lang.Class tcc
16: .line 52
StackMap locals:
StackMap stack: java.lang.Exception
pop
17: .line 53
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "cpu "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* cpu */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is not yet supported"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 1 // java.lang.String cpu
end local 0 // sun.jvm.hotspot.debugger.linux.LinuxDebugger dbg
LocalVariableTable:
Start End Slot Name Signature
0 18 0 dbg Lsun/jvm/hotspot/debugger/linux/LinuxDebugger;
1 18 1 cpu Ljava/lang/String;
13 16 2 tcc Ljava/lang/Class;
14 16 3 ctcc [Ljava/lang/reflect/Constructor;
Exception table:
from to target type
9 15 16 Class java.lang.Exception
MethodParameters:
Name Flags
dbg
}
SourceFile: "LinuxThreadContextFactory.java"