mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 11:38:21 +02:00
Fix to GC capture priming
This commit is contained in:
parent
d778f2dd2f
commit
6c3ae6f181
1 changed files with 11 additions and 11 deletions
|
@ -1387,17 +1387,7 @@ void BFGC::AdjustStackPtr(intptr& addr, int& size)
|
||||||
bool BFGC::ScanThreads()
|
bool BFGC::ScanThreads()
|
||||||
{
|
{
|
||||||
BP_ZONE("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;
|
mUsingThreadUnlocked = true;
|
||||||
|
|
||||||
BF_FULL_MEMORY_FENCE();
|
BF_FULL_MEMORY_FENCE();
|
||||||
|
@ -2403,6 +2393,16 @@ void BFGC::PerformCollection()
|
||||||
{
|
{
|
||||||
BP_ZONE("TriggerCollection");
|
BP_ZONE("TriggerCollection");
|
||||||
|
|
||||||
|
if (mCollectIdx == 0)
|
||||||
|
{
|
||||||
|
// 'Prime' register capture
|
||||||
|
intptr regVals[128];
|
||||||
|
intptr stackPtr = 0;
|
||||||
|
BfpThreadResult threadResult;
|
||||||
|
int regValCount = 128;
|
||||||
|
BfpThread_GetIntRegisters(BfpThread_GetCurrent(), &stackPtr, regVals, ®ValCount, &threadResult);
|
||||||
|
}
|
||||||
|
|
||||||
int prevMarkId = mCurMarkId;
|
int prevMarkId = mCurMarkId;
|
||||||
|
|
||||||
DWORD startTick = BFTickCount();
|
DWORD startTick = BFTickCount();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue