android_mt6572_jiabo/art/test/088-monitor-verification/smali/OK.smali
2025-09-05 16:56:03 +08:00

68 lines
1.2 KiB
Smali

.class public LOK;
.super Ljava/lang/Object;
.method public static run(Ljava/lang/Object;Ljava/lang/Object;)V
.registers 3
invoke-static {v1, v2}, LOK;->runNoMonitors(Ljava/lang/Object;Ljava/lang/Object;)V
invoke-static {v1, v2}, LOK;->runStraightLine(Ljava/lang/Object;Ljava/lang/Object;)V
invoke-static {v1, v2}, LOK;->runBalancedJoin(Ljava/lang/Object;Ljava/lang/Object;)V
return-void
.end method
.method public static runNoMonitors(Ljava/lang/Object;Ljava/lang/Object;)V
.registers 3
invoke-static {}, LMain;->assertIsManaged()V
return-void
.end method
.method public static runStraightLine(Ljava/lang/Object;Ljava/lang/Object;)V
.registers 3
invoke-static {}, LMain;->assertIsManaged()V
monitor-enter v1 # 1
monitor-enter v2 # 2
monitor-exit v2 # 2
monitor-exit v1 # 1
return-void
.end method
.method public static runBalancedJoin(Ljava/lang/Object;Ljava/lang/Object;)V
.registers 3
invoke-static {}, LMain;->assertIsManaged()V
monitor-enter v1 # 1
if-eqz v2, :Lnull
:LnotNull
monitor-enter v2 # 2
goto :Lend
:Lnull
monitor-enter v2 # 2
:Lend
monitor-exit v2 # 2
monitor-exit v1 # 1
return-void
.end method