diff --git a/Source/JavaScriptCore/runtime/SamplingProfiler.cpp b/Source/JavaScriptCore/runtime/SamplingProfiler.cpp
index 5c3d452..5ff587e 100644
--- a/Source/JavaScriptCore/runtime/SamplingProfiler.cpp
+++ b/Source/JavaScriptCore/runtime/SamplingProfiler.cpp
@@ -350,13 +350,13 @@
     if (m_vm.entryScope) {
         Seconds nowTime = m_stopwatch->elapsedTime();
 
-        auto machineThreadsLocker = holdLock(m_vm.heap.machineThreads().getLock());
-        auto codeBlockSetLocker = holdLock(m_vm.heap.codeBlockSet().getLock());
-        auto executableAllocatorLocker = holdLock(ExecutableAllocator::singleton().getLock());
+        Locker machineThreadsLocker { m_vm.heap.machineThreads().getLock() };
+        Locker codeBlockSetLocker { m_vm.heap.codeBlockSet().getLock() };
+        Locker executableAllocatorLocker { ExecutableAllocator::singleton().getLock() };
         Optional<LockHolder> wasmCalleesLocker;
 #if ENABLE(WEBASSEMBLY)
         if (Wasm::isSupported())
-            wasmCalleesLocker = holdLock(Wasm::CalleeRegistry::singleton().getLock());
+            wasmCalleesLocker = Locker { Wasm::CalleeRegistry::singleton().getLock() };
 #endif
 
         auto didSuspend = m_jscExecutionThread->suspend();
@@ -951,7 +951,7 @@
 String SamplingProfiler::stackTracesAsJSON()
 {
     DeferGC deferGC(m_vm.heap);
-    auto locker = holdLock(m_lock);
+    Locker locker { m_lock };
 
     {
         HeapIterationScope heapIterationScope(m_vm.heap);
@@ -1027,7 +1027,7 @@
 
 void SamplingProfiler::reportTopFunctions(PrintStream& out)
 {
-    auto locker = holdLock(m_lock);
+    Locker locker { m_lock };
     DeferGCForAWhile deferGC(m_vm.heap);
 
     {
@@ -1088,7 +1088,7 @@
 
 void SamplingProfiler::reportTopBytecodes(PrintStream& out)
 {
-    auto locker = holdLock(m_lock);
+    Locker locker { m_lock };
     DeferGCForAWhile deferGC(m_vm.heap);
 
     {
