public final class com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread
super_class: java.lang.Object
{
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 // com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread this
0: .line 286
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 288
return
end local 0 // com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/svm/core/posix/Util_jdk_internal_misc_Signal$DispatchThread;
static void interrupt(java.lang.Thread);
descriptor: (Ljava/lang/Thread;)V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 // java.lang.Thread thread
0: .line 291
aload 0 /* thread */
invokevirtual java.lang.Thread.interrupt:()V
1: .line 292
invokestatic com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState.wakeUp:()V
2: .line 293
return
end local 0 // java.lang.Thread thread
LocalVariableTable:
Start End Slot Name Signature
0 3 0 thread Ljava/lang/Thread;
MethodParameters:
Name Flags
thread
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=1
start local 0 // com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread this
0: .line 302
goto 12
1: .line 306
StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState.await:()V
2: .line 307
invokestatic java.lang.Thread.interrupted:()Z
ifeq 4
3: .line 309
goto 13
4: .line 312
StackMap locals:
StackMap stack:
getstatic com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal.signalState:[Lcom/oracle/svm/core/posix/Util_jdk_internal_misc_Signal$SignalState;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 11
StackMap locals: com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread top int int com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState[]
StackMap stack:
5: aload 4
iload 2
aaload
astore 1 /* entry */
start local 1 // com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState entry
6: .line 313
aload 1 /* entry */
invokevirtual com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState.getDispatcher:()Lcom/oracle/svm/core/posix/headers/Signal$SignalDispatcher;
astore 5 /* dispatcher */
start local 5 // com.oracle.svm.core.posix.headers.Signal$SignalDispatcher dispatcher
7: .line 315
aload 5 /* dispatcher */
invokestatic com.oracle.svm.core.posix.headers.CSunMiscSignal.countingHandlerFunctionPointer:()Lcom/oracle/svm/core/posix/headers/Signal$SignalDispatcher;
invokeinterface com.oracle.svm.core.posix.headers.Signal$SignalDispatcher.equal:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 10
8: .line 317
aload 1 /* entry */
invokevirtual com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState.decrementCount:()J
lconst_0
lcmp
ifle 10
9: .line 318
aload 1 /* entry */
invokevirtual com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState.getNumber:()I
invokestatic com.oracle.svm.core.posix.Target_jdk_internal_misc_Signal.dispatch:(I)V
end local 5 // com.oracle.svm.core.posix.headers.Signal$SignalDispatcher dispatcher
end local 1 // com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState entry
10: .line 312
StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
iload 3
if_icmplt 5
12: .line 302
StackMap locals: com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread
StackMap stack:
invokestatic java.lang.Thread.interrupted:()Z
ifeq 1
13: .line 324
StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.core.posix.headers.CSunMiscSignal.close:()I
pop
14: .line 325
return
end local 0 // com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/oracle/svm/core/posix/Util_jdk_internal_misc_Signal$DispatchThread;
6 10 1 entry Lcom/oracle/svm/core/posix/Util_jdk_internal_misc_Signal$SignalState;
7 10 5 dispatcher Lcom/oracle/svm/core/posix/headers/Signal$SignalDispatcher;
}
SourceFile: "SunMiscSubstitutions.java"
NestHost: com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal
InnerClasses:
protected final DispatchThread = com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$DispatchThread of com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal
private final SignalState = com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal$SignalState of com.oracle.svm.core.posix.Util_jdk_internal_misc_Signal
public abstract SignalDispatcher = com.oracle.svm.core.posix.headers.Signal$SignalDispatcher of com.oracle.svm.core.posix.headers.Signal