diff --git a/BeefRT/dbg/gc.cpp b/BeefRT/dbg/gc.cpp index 4cc7583b..e3f035b2 100644 --- a/BeefRT/dbg/gc.cpp +++ b/BeefRT/dbg/gc.cpp @@ -1388,6 +1388,16 @@ bool BFGC::ScanThreads() { BP_ZONE("BFGC::ScanThreads"); + if (mStackScanIdx == 0) + { + // 'Prime' register capture + intptr regVals[128]; + intptr stackPtr = 0; + BfpThreadResult threadResult; + int regValCount = 128; + BfpThread_GetIntRegisters(BfpThread_GetCurrent(), &stackPtr, regVals, ®ValCount, &threadResult); + } + mUsingThreadUnlocked = true; BF_FULL_MEMORY_FENCE();