MCPcopy Create free account
hub / github.com/beefytech/Beef / EvaluateAutoStaticVariable

Method EvaluateAutoStaticVariable

IDEHelper/DebugTarget.cpp:571–601  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

569}
570
571void DebugTarget::EvaluateAutoStaticVariable(DbgVariable* variable, const StringImpl& fullName)
572{
573 BF_ASSERT(variable->mIsStatic && !variable->mIsConst); // why are you calling this if you haven't checked these yet
574 BF_ASSERT(!variable->mInAutoStaticMap);
575
576 if ((variable->mLocationData != NULL) && (variable->mLocationLen > 0))
577 {
578 DbgAddrType addrType = DbgAddrType_Local;
579 intptr variableAddr = variable->mStaticCachedAddr;
580 if (variableAddr == 0)
581 {
582 addrType = DbgAddrType_Target;
583 variableAddr = variable->mCompileUnit->mDbgModule->EvaluateLocation(NULL, variable->mLocationData, variable->mLocationLen, NULL/*registers*/, &addrType);
584 }
585
586 //BF_ASSERT((addrType == DbgAddrType_Value) || (variableAddr > 0));
587 if ((addrType == DbgAddrType_Local) && (variableAddr != 0))
588 {
589 DbgAutoStaticEntry entry;
590
591 entry.mFullName = fullName;
592 entry.mVariable = variable;
593 entry.mAddrStart = variableAddr;
594 entry.mAddrLen = variable->mType->mSize;
595
596 AddAutoStaticEntry(entry);
597
598 variable->mInAutoStaticMap = true;
599 }
600 }
601}
602
603void DebugTarget::GetAutoValueNames(DbgAutoValueMapType& outAutos, WdStackFrame* stackFrame, uint64 memoryRangeStart, uint64 memoryRangeLen)
604{

Callers

nothing calls this directly

Calls 1

EvaluateLocationMethod · 0.45

Tested by

no test coverage detected