Implement thin-lock fast path for compiler-llvm.
Change-Id: I09d6a0dba4df7cbeb0c0e3f432ab3b09fce0846d
diff --git a/src/compiler_llvm/method_compiler.cc b/src/compiler_llvm/method_compiler.cc
index eecace0..4021f7b 100644
--- a/src/compiler_llvm/method_compiler.cc
+++ b/src/compiler_llvm/method_compiler.cc
@@ -1551,9 +1551,7 @@
EmitGuard_NullPointerException(dex_pc, object_addr);
}
- llvm::Value* thread_object_addr = irb_.Runtime().EmitGetCurrentThread();
-
- irb_.CreateCall2(irb_.GetRuntime(LockObject), object_addr, thread_object_addr);
+ irb_.Runtime().EmitLockObject(object_addr);
irb_.CreateBr(GetNextBasicBlock(dex_pc));
}
@@ -1573,9 +1571,7 @@
EmitUpdateDexPC(dex_pc);
- llvm::Value* thread_object_addr = irb_.Runtime().EmitGetCurrentThread();
-
- irb_.CreateCall2(irb_.GetRuntime(UnlockObject), object_addr, thread_object_addr);
+ irb_.Runtime().EmitUnlockObject(object_addr);
EmitGuard_ExceptionLandingPad(dex_pc, true);