mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 03:28:20 +02:00
Trimmed trailing whitespace
This commit is contained in:
parent
8eda627e2f
commit
14f20f10c8
28 changed files with 1659 additions and 1768 deletions
|
@ -21,7 +21,6 @@
|
||||||
|
|
||||||
#include "BeefySysLib/util/AllocDebug.h"
|
#include "BeefySysLib/util/AllocDebug.h"
|
||||||
|
|
||||||
|
|
||||||
#define LF_CLASS_EX 0x1608
|
#define LF_CLASS_EX 0x1608
|
||||||
#define LF_STRUCTURE_EX 0x1609
|
#define LF_STRUCTURE_EX 0x1609
|
||||||
|
|
||||||
|
@ -769,14 +768,12 @@ DbgSubprogram* COFF::CvParseMethod(DbgType* parentType, const char* methodName,
|
||||||
else if (trLeafType == LF_MFUNC_ID)
|
else if (trLeafType == LF_MFUNC_ID)
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SoftFail(StrFormat("Unhandled func type at tagId %d ipi %d", tagIdx, ipi));
|
SoftFail(StrFormat("Unhandled func type at tagId %d ipi %d", tagIdx, ipi));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ((parentType != NULL) && (!IsObjectFile()))
|
if ((parentType != NULL) && (!IsObjectFile()))
|
||||||
{
|
{
|
||||||
subprogram->mCompileUnit = parentType->mCompileUnit;
|
subprogram->mCompileUnit = parentType->mCompileUnit;
|
||||||
|
@ -1595,8 +1592,6 @@ DbgType* COFF::CvParseType(int tagIdx, bool ipi)
|
||||||
else
|
else
|
||||||
dbgType->mTypeCode = DbgType_Struct;
|
dbgType->mTypeCode = DbgType_Struct;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
DbgType* baseType = NULL;
|
DbgType* baseType = NULL;
|
||||||
if (derived != 0)
|
if (derived != 0)
|
||||||
{
|
{
|
||||||
|
@ -1734,7 +1729,6 @@ DbgType* COFF::CvParseType(int tagIdx, bool ipi)
|
||||||
break;
|
break;
|
||||||
case LF_DIMARRAY:
|
case LF_DIMARRAY:
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case LF_ARRAY:
|
case LF_ARRAY:
|
||||||
|
@ -3027,7 +3021,6 @@ void COFF::ParseCompileUnit_Symbols(DbgCompileUnit* compileUnit, uint8* sectionD
|
||||||
inlineDebugDump = false;
|
inlineDebugDump = false;
|
||||||
curSubprogram = NULL;
|
curSubprogram = NULL;
|
||||||
curParam = NULL;
|
curParam = NULL;
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case S_COMPILE2:
|
case S_COMPILE2:
|
||||||
|
@ -3357,7 +3350,6 @@ void COFF::ParseCompileUnit_Symbols(DbgCompileUnit* compileUnit, uint8* sectionD
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
for (int blockIdx = (int)blockStack.size() - 1; blockIdx >= 0; blockIdx--)
|
for (int blockIdx = (int)blockStack.size() - 1; blockIdx >= 0; blockIdx--)
|
||||||
|
@ -3415,7 +3407,6 @@ void COFF::ParseCompileUnit_Symbols(DbgCompileUnit* compileUnit, uint8* sectionD
|
||||||
BF_ASSERT(locationDataCount == prevLocalVar->mLocationLen);
|
BF_ASSERT(locationDataCount == prevLocalVar->mLocationLen);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
|
|
||||||
data = dataEnd;
|
data = dataEnd;
|
||||||
//PTR_ALIGN(data, sectionData, 4);
|
//PTR_ALIGN(data, sectionData, 4);
|
||||||
}
|
}
|
||||||
|
@ -3863,7 +3854,6 @@ CvCompileUnit* COFF::ParseCompileUnit(CvModuleInfo* moduleInfo, CvCompileUnit* c
|
||||||
bool flushOnLineOffset = false;
|
bool flushOnLineOffset = false;
|
||||||
addr_target lastLineAddr = 0;
|
addr_target lastLineAddr = 0;
|
||||||
|
|
||||||
|
|
||||||
DbgSrcFileReference* srcFileRef = startSrcFileRef;
|
DbgSrcFileReference* srcFileRef = startSrcFileRef;
|
||||||
DbgSubprogram* curSubprogram = inlineData->mSubprogram;
|
DbgSubprogram* curSubprogram = inlineData->mSubprogram;
|
||||||
|
|
||||||
|
@ -3907,7 +3897,6 @@ CvCompileUnit* COFF::ParseCompileUnit(CvModuleInfo* moduleInfo, CvCompileUnit* c
|
||||||
BfLogCv(" Adding Line:%d Addr:%@\n", lineData.mLine + 1, lineData.mRelAddress + mImageBase);
|
BfLogCv(" Adding Line:%d Addr:%@\n", lineData.mLine + 1, lineData.mRelAddress + mImageBase);
|
||||||
|
|
||||||
curLineData = lineBuilder.Add(compileUnit, lineData, srcFileRef->mSrcFile, curSubprogram);
|
curLineData = lineBuilder.Add(compileUnit, lineData, srcFileRef->mSrcFile, curSubprogram);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
int codeIdx = 0;
|
int codeIdx = 0;
|
||||||
|
@ -4111,7 +4100,6 @@ CvCompileUnit* COFF::ParseCompileUnit(CvModuleInfo* moduleInfo, CvCompileUnit* c
|
||||||
|
|
||||||
lineBuilder.Commit();
|
lineBuilder.Commit();
|
||||||
|
|
||||||
|
|
||||||
//OutputDebugStrF("Module loaded, AllocSize added: %d\n", (mAlloc.GetAllocSize() - allocSizeStart) / 1024);
|
//OutputDebugStrF("Module loaded, AllocSize added: %d\n", (mAlloc.GetAllocSize() - allocSizeStart) / 1024);
|
||||||
return compileUnit;
|
return compileUnit;
|
||||||
}
|
}
|
||||||
|
@ -4694,7 +4682,6 @@ void COFF::ScanCompileUnit(int compileUnitId)
|
||||||
PTR_ALIGN(data, sectionData, 4);
|
PTR_ALIGN(data, sectionData, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
break; // Stop once we handle the file checksums
|
break; // Stop once we handle the file checksums
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5349,7 +5336,6 @@ void COFF::CvParseIPI()
|
||||||
{
|
{
|
||||||
lfStringId& str = *(lfStringId*)data;
|
lfStringId& str = *(lfStringId*)data;
|
||||||
const char* parentStr = (const char*)str.name;
|
const char* parentStr = (const char*)str.name;
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case LF_UDT_MOD_SRC_LINE:
|
case LF_UDT_MOD_SRC_LINE:
|
||||||
|
@ -5367,7 +5353,6 @@ void COFF::CvParseIPI()
|
||||||
{
|
{
|
||||||
lfMFuncId* funcData = (lfMFuncId*)dataStart;
|
lfMFuncId* funcData = (lfMFuncId*)dataStart;
|
||||||
auto parentType = CvGetType(funcData->parentType);
|
auto parentType = CvGetType(funcData->parentType);
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -5922,7 +5907,6 @@ bool COFF::ParseCv(DataStream& pdbFS, uint8* rootDirData, int pageSize, uint8 wa
|
||||||
for (int i = 0; i < (int)mCvStreamPtrs.size(); i++)
|
for (int i = 0; i < (int)mCvStreamPtrs.size(); i++)
|
||||||
mCvStreamPtrs[i] = GET(int32);
|
mCvStreamPtrs[i] = GET(int32);
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
if (!CvParseHeader(wantGuid, wantAge))
|
if (!CvParseHeader(wantGuid, wantAge))
|
||||||
|
@ -7089,7 +7073,6 @@ addr_target COFF::LocateSymbol(const StringImpl& name)
|
||||||
// delete data;
|
// delete data;
|
||||||
// #endif
|
// #endif
|
||||||
|
|
||||||
|
|
||||||
FileSubStream fileStream;
|
FileSubStream fileStream;
|
||||||
fileStream.mFP = libEntry->mLibFile->mOldFileStream.mFP;
|
fileStream.mFP = libEntry->mLibFile->mOldFileStream.mFP;
|
||||||
fileStream.mOffset = libEntry->mOldDataPos + sizeof(BeLibMemberHeader);
|
fileStream.mOffset = libEntry->mOldDataPos + sizeof(BeLibMemberHeader);
|
||||||
|
@ -7234,7 +7217,6 @@ void COFF::ParseFrameDescriptors(uint8* data, int size, addr_target baseAddr)
|
||||||
}
|
}
|
||||||
|
|
||||||
mParsedFrameDescriptors = true;
|
mParsedFrameDescriptors = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void COFF::ParseFrameDescriptors()
|
void COFF::ParseFrameDescriptors()
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
|
||||||
#include "DbgModule.h"
|
#include "DbgModule.h"
|
||||||
#include "StrBloomMap.h"
|
#include "StrBloomMap.h"
|
||||||
#include "DbgSymSrv.h"
|
#include "DbgSymSrv.h"
|
||||||
|
@ -203,7 +202,6 @@ public:
|
||||||
Dictionary<String, BeLibEntry*> mSymDict;
|
Dictionary<String, BeLibEntry*> mSymDict;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class COFF : public DbgModule
|
class COFF : public DbgModule
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -427,5 +425,3 @@ namespace std
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -49,4 +49,3 @@ enum RegForm : int8
|
||||||
RegForm_Double2,
|
RegForm_Double2,
|
||||||
RegForm_Double4,
|
RegForm_Double4,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -642,4 +642,3 @@ enum RelocationTypeAMD64
|
||||||
COFF_REL_AMD64_PAIR = 0x000F,
|
COFF_REL_AMD64_PAIR = 0x000F,
|
||||||
COFF_REL_AMD64_SSPAN32 = 0x0010
|
COFF_REL_AMD64_SSPAN32 = 0x0010
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,5 @@ DbgEvalPool::Entry* DbgEvalPool::Add(const std::string& expr, int callStackIdx,
|
||||||
entry->mAllowCall = allowCalls;
|
entry->mAllowCall = allowCalls;
|
||||||
entry->mExpressionFlags = expressionFlags;
|
entry->mExpressionFlags = expressionFlags;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
|
@ -429,7 +429,6 @@ bool DwMethodMatcher::CheckMethod(DbgType* typeInstance, DbgSubprogram* checkMet
|
||||||
if (!mArguments[argIdx])
|
if (!mArguments[argIdx])
|
||||||
goto NoMatch;
|
goto NoMatch;
|
||||||
|
|
||||||
|
|
||||||
if (!mExprEvaluator->CanCast(mArguments[argIdx], wantType))
|
if (!mExprEvaluator->CanCast(mArguments[argIdx], wantType))
|
||||||
goto NoMatch;
|
goto NoMatch;
|
||||||
|
|
||||||
|
@ -1303,19 +1302,15 @@ void DbgExprEvaluator::BeefTypeToString(const DbgTypedValue& val, String& outStr
|
||||||
|
|
||||||
struct _String
|
struct _String
|
||||||
{
|
{
|
||||||
|
|
||||||
};
|
};
|
||||||
struct _MethodData
|
struct _MethodData
|
||||||
{
|
{
|
||||||
|
|
||||||
};
|
};
|
||||||
struct _FieldData
|
struct _FieldData
|
||||||
{
|
{
|
||||||
|
|
||||||
};
|
};
|
||||||
struct _ClassVData
|
struct _ClassVData
|
||||||
{
|
{
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _TypeInstance : public _Type
|
struct _TypeInstance : public _Type
|
||||||
|
@ -2105,7 +2100,6 @@ DbgTypedValue DbgExprEvaluator::Cast(BfAstNode* srcNode, const DbgTypedValue& ty
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// IFace -> object|IFace
|
// IFace -> object|IFace
|
||||||
if ((fromType->IsInterface()) ||
|
if ((fromType->IsInterface()) ||
|
||||||
((fromType->IsPointer()) && (fromType->mTypeParam->IsInterface())))
|
((fromType->IsPointer()) && (fromType->mTypeParam->IsInterface())))
|
||||||
|
@ -2187,7 +2181,6 @@ DbgTypedValue DbgExprEvaluator::Cast(BfAstNode* srcNode, const DbgTypedValue& ty
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ((fromType->IsPrimitiveType()) && (toType->IsPrimitiveType()))
|
if ((fromType->IsPrimitiveType()) && (toType->IsPrimitiveType()))
|
||||||
{
|
{
|
||||||
DbgTypeCode fromTypeCode = fromType->mTypeCode;
|
DbgTypeCode fromTypeCode = fromType->mTypeCode;
|
||||||
|
@ -2619,7 +2612,6 @@ DbgTypedValue DbgExprEvaluator::DoLookupField(BfAstNode* targetSrc, DbgTypedValu
|
||||||
//TODO:
|
//TODO:
|
||||||
/*if (field->mIsConst)
|
/*if (field->mIsConst)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (fieldInstance->mStaticValue == NULL)
|
if (fieldInstance->mStaticValue == NULL)
|
||||||
mModule->ResolveConstField(curCheckType, field);
|
mModule->ResolveConstField(curCheckType, field);
|
||||||
return DbgTypedValue(fieldInstance->mStaticValue, fieldInstance->mType);
|
return DbgTypedValue(fieldInstance->mStaticValue, fieldInstance->mType);
|
||||||
|
@ -2902,7 +2894,6 @@ DbgTypedValue DbgExprEvaluator::DoLookupField(BfAstNode* targetSrc, DbgTypedValu
|
||||||
}
|
}
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
|
|
||||||
//curCheckType = curCheckType->GetBaseType();
|
//curCheckType = curCheckType->GetBaseType();
|
||||||
|
|
||||||
for (auto baseTypeEntry : curCheckType->mBaseTypes)
|
for (auto baseTypeEntry : curCheckType->mBaseTypes)
|
||||||
|
@ -4134,7 +4125,6 @@ void DbgExprEvaluator::Visit(BfAssignmentExpression* assignExpr)
|
||||||
if (!convVal)
|
if (!convVal)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
||||||
// SizedArray<DbgTypedValue, 4> argPushQueue;
|
// SizedArray<DbgTypedValue, 4> argPushQueue;
|
||||||
// if (propSet->mHasThis)
|
// if (propSet->mHasThis)
|
||||||
// argPushQueue.push_back(propTarget);
|
// argPushQueue.push_back(propTarget);
|
||||||
|
@ -4685,7 +4675,6 @@ void DbgExprEvaluator::AutocompleteCheckMemberReference(BfAstNode* target, BfAst
|
||||||
//return AutocompleteAddMembersFromNamespace(memberRefExpr->mTarget->ToString(), filter, isCType);
|
//return AutocompleteAddMembersFromNamespace(memberRefExpr->mTarget->ToString(), filter, isCType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DbgExprEvaluator::Visit(BfMemberReferenceExpression* memberRefExpr)
|
void DbgExprEvaluator::Visit(BfMemberReferenceExpression* memberRefExpr)
|
||||||
|
@ -5191,7 +5180,6 @@ void DbgExprEvaluator::LookupSplatMember(BfAstNode* targetNode, BfAstNode* looku
|
||||||
mResult = splatLookupEntry->mResult;
|
mResult = splatLookupEntry->mResult;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String findName;
|
String findName;
|
||||||
|
@ -6257,7 +6245,6 @@ void DbgExprEvaluator::PerformBinaryOperation(ASTREF(BfExpression*)& leftExpress
|
||||||
{
|
{
|
||||||
if (binaryOp == BfBinaryOp_Subtract)
|
if (binaryOp == BfBinaryOp_Subtract)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (resultType->GetByteCount() < 4)
|
else if (resultType->GetByteCount() < 4)
|
||||||
{
|
{
|
||||||
|
@ -6599,7 +6586,6 @@ void DbgExprEvaluator::Visit(BfBinaryOperatorExpression* binOpExpr)
|
||||||
PerformBinaryOperation(binOpExpr->mLeft, binOpExpr->mRight, binOpExpr->mOp, binOpExpr->mOpToken, false);
|
PerformBinaryOperation(binOpExpr->mLeft, binOpExpr->mRight, binOpExpr->mOp, binOpExpr->mOpToken, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DbgExprEvaluator::PerformUnaryExpression(BfAstNode* opToken, BfUnaryOp unaryOp, ASTREF(BfExpression*)& expr)
|
void DbgExprEvaluator::PerformUnaryExpression(BfAstNode* opToken, BfUnaryOp unaryOp, ASTREF(BfExpression*)& expr)
|
||||||
{
|
{
|
||||||
if (unaryOp != BfUnaryOp_Dereference)
|
if (unaryOp != BfUnaryOp_Dereference)
|
||||||
|
@ -7283,7 +7269,6 @@ DbgTypedValue DbgExprEvaluator::CreateCall(BfAstNode* targetSrc, DbgTypedValue t
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (argValue.mType == NULL)
|
if (argValue.mType == NULL)
|
||||||
return DbgTypedValue();
|
return DbgTypedValue();
|
||||||
|
|
||||||
|
@ -7585,7 +7570,6 @@ DbgTypedValue DbgExprEvaluator::MatchMethod(BfAstNode* targetSrc, DbgTypedValue
|
||||||
checkType = checkType->mTypeParam;
|
checkType = checkType->mTypeParam;
|
||||||
if (checkType != NULL)
|
if (checkType != NULL)
|
||||||
{
|
{
|
||||||
|
|
||||||
//TODO: Protect
|
//TODO: Protect
|
||||||
String findFieldName = argValues[1].mCharPtr;
|
String findFieldName = argValues[1].mCharPtr;
|
||||||
|
|
||||||
|
@ -8162,7 +8146,6 @@ void DbgExprEvaluator::DoInvocation(BfAstNode* target, BfSizedArray<ASTREF(BfExp
|
||||||
allowImplicitThis = true;
|
allowImplicitThis = true;
|
||||||
|
|
||||||
targetFunctionName = target->ToString();
|
targetFunctionName = target->ToString();
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (auto invocationExpr = BfNodeDynCast<BfInvocationExpression>(target))
|
else if (auto invocationExpr = BfNodeDynCast<BfInvocationExpression>(target))
|
||||||
{
|
{
|
||||||
|
|
|
@ -873,7 +873,6 @@ void DbgSrcFile::RemoveDeferredRefs(DbgModule* debugModule)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DbgSrcFile::RemoveLines(DbgModule* debugModule)
|
void DbgSrcFile::RemoveLines(DbgModule* debugModule)
|
||||||
{
|
{
|
||||||
if (!mHasLineDataFromMultipleModules)
|
if (!mHasLineDataFromMultipleModules)
|
||||||
|
@ -1951,7 +1950,6 @@ String DbgType::ToString(DbgLanguage language, bool allowDirectBfObject)
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
intptr DbgType::GetByteCount()
|
intptr DbgType::GetByteCount()
|
||||||
{
|
{
|
||||||
if (!mSizeCalculated)
|
if (!mSizeCalculated)
|
||||||
|
@ -2406,17 +2404,14 @@ void DbgModule::MapCompileUnitMethods(DbgCompileUnit * compileUnit)
|
||||||
|
|
||||||
void DbgModule::MapCompileUnitMethods(int compileUnitId)
|
void DbgModule::MapCompileUnitMethods(int compileUnitId)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DbgModule::PopulateType(DbgType* dbgType)
|
void DbgModule::PopulateType(DbgType* dbgType)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DbgModule::PopulateTypeGlobals(DbgType* dbgType)
|
void DbgModule::PopulateTypeGlobals(DbgType* dbgType)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DbgModule::PopulateStaticVariableMap()
|
void DbgModule::PopulateStaticVariableMap()
|
||||||
|
@ -2707,7 +2702,6 @@ T DbgModule::GetOrCreate(int idx, DbgDataMap& dataMap)
|
||||||
return val;
|
return val;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
static T GetStackTop(DataStack* dataStack)
|
static T GetStackTop(DataStack* dataStack)
|
||||||
{
|
{
|
||||||
|
@ -3609,7 +3603,6 @@ bool DbgModule::ParseDWARF(const uint8*& dataPtr)
|
||||||
if (highPC > (addr_target)atHighPC)
|
if (highPC > (addr_target)atHighPC)
|
||||||
atHighPC = highPC;*/
|
atHighPC = highPC;*/
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (entryTag)
|
switch (entryTag)
|
||||||
|
@ -4002,7 +3995,6 @@ bool DbgModule::ParseDWARF(const uint8*& dataPtr)
|
||||||
|
|
||||||
if (atAbstractOrigin != 0)
|
if (atAbstractOrigin != 0)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -4178,7 +4170,6 @@ bool DbgModule::ParseDWARF(const uint8*& dataPtr)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
int nameSepLen = strlen(nameSep);
|
int nameSepLen = strlen(nameSep);
|
||||||
int parentNameLen = strlen(dbgType->mParent->mName);
|
int parentNameLen = strlen(dbgType->mParent->mName);
|
||||||
int nameLen = strlen(atName);
|
int nameLen = strlen(atName);
|
||||||
|
@ -4687,7 +4678,6 @@ void DbgModule::ParseEHFrameData()
|
||||||
|
|
||||||
void DbgModule::FlushLineData(DbgSubprogram* curSubprogram, std::list<DbgLineData>& queuedLineData)
|
void DbgModule::FlushLineData(DbgSubprogram* curSubprogram, std::list<DbgLineData>& queuedLineData)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DbgSrcFile* DbgModule::AddSrcFile(DbgCompileUnit* compileUnit, const String& srcFilePath)
|
DbgSrcFile* DbgModule::AddSrcFile(DbgCompileUnit* compileUnit, const String& srcFilePath)
|
||||||
|
@ -4922,8 +4912,6 @@ bool DbgModule::ParseDebugLineInfo(const uint8*& dataPtr, int compileUnitIdx)
|
||||||
}
|
}
|
||||||
|
|
||||||
queuedPostPrologue = false;
|
queuedPostPrologue = false;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -4977,7 +4965,6 @@ uint8* DbgModule::GetHotTargetData(addr_target address)
|
||||||
|
|
||||||
void DbgModule::DoReloc(DbgHotTargetSection* hotTargetSection, COFFRelocation& coffReloc, addr_target resolvedSymbolAddr, PE_SymInfo* symInfo)
|
void DbgModule::DoReloc(DbgHotTargetSection* hotTargetSection, COFFRelocation& coffReloc, addr_target resolvedSymbolAddr, PE_SymInfo* symInfo)
|
||||||
{
|
{
|
||||||
|
|
||||||
#ifdef BF_DBG_32
|
#ifdef BF_DBG_32
|
||||||
if (coffReloc.mType == IMAGE_REL_I386_DIR32)
|
if (coffReloc.mType == IMAGE_REL_I386_DIR32)
|
||||||
{
|
{
|
||||||
|
@ -5067,7 +5054,6 @@ void DbgModule::DoReloc(DbgHotTargetSection* hotTargetSection, COFFRelocation& c
|
||||||
}
|
}
|
||||||
|
|
||||||
*(uint32*)(hotTargetSection->mData + coffReloc.mVirtualAddress) += (uint32)(resolvedSymbolAddr & 0x7FFFFFF);
|
*(uint32*)(hotTargetSection->mData + coffReloc.mVirtualAddress) += (uint32)(resolvedSymbolAddr & 0x7FFFFFF);
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (coffReloc.mType == IMAGE_REL_AMD64_ADDR64)
|
else if (coffReloc.mType == IMAGE_REL_AMD64_ADDR64)
|
||||||
{
|
{
|
||||||
|
@ -5348,7 +5334,6 @@ void DbgModule::HotReplaceType(DbgType* newType)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//DbgType* primaryType = newType->GetPrimaryType();
|
//DbgType* primaryType = newType->GetPrimaryType();
|
||||||
|
|
||||||
// We need to keep a persistent list of hot replaced methods so we can set hot jumps
|
// We need to keep a persistent list of hot replaced methods so we can set hot jumps
|
||||||
|
@ -5883,7 +5868,6 @@ bool DbgModule::ReadCOFF(DataStream* stream, DbgModuleKind moduleKind)
|
||||||
|
|
||||||
if ((IsObjectFile()) && (sectHdr.mNumberOfRelocations > 0))
|
if ((IsObjectFile()) && (sectHdr.mNumberOfRelocations > 0))
|
||||||
{
|
{
|
||||||
|
|
||||||
//mDebugger->AllocTargetMemory(sectHdr.mSizeOfRawData, true, true);
|
//mDebugger->AllocTargetMemory(sectHdr.mSizeOfRawData, true, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7212,7 +7196,6 @@ void DbgModule::RevertWritingEnable()
|
||||||
section->mWritingEnabled = false;
|
section->mWritingEnabled = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename TRadixMap>
|
template <typename TRadixMap>
|
||||||
|
@ -7478,7 +7461,6 @@ DbgType* DbgModule::GetPrimitiveStructType(DbgTypeCode typeCode)
|
||||||
return FindType(name, NULL, DbgLanguage_Beef);
|
return FindType(name, NULL, DbgLanguage_Beef);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DbgType* DbgModule::GetSizedArrayType(DbgType * elementType, int count)
|
DbgType* DbgModule::GetSizedArrayType(DbgType * elementType, int count)
|
||||||
{
|
{
|
||||||
auto linkedModule = GetLinkedModule();
|
auto linkedModule = GetLinkedModule();
|
||||||
|
|
|
@ -33,7 +33,6 @@ DbgSymRequest::DbgSymRequest()
|
||||||
|
|
||||||
DbgSymRequest::~DbgSymRequest()
|
DbgSymRequest::~DbgSymRequest()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String DbgSymRequest::GetGuidString()
|
String DbgSymRequest::GetGuidString()
|
||||||
|
@ -569,6 +568,4 @@ void DbgSymSrv::ReleaseRequest(DbgSymRequest* dbgSymRequest)
|
||||||
|
|
||||||
void DbgSymSrv::Update()
|
void DbgSymSrv::Update()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -763,7 +763,6 @@ bool DebugTarget::GetAutoLocalsInBlock(Array<String>& outLocals, DbgSubprogram*
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DbgSubprogram* DebugTarget::FindSubProgram(addr_target pc, DbgOnDemandKind onDemandKind)
|
DbgSubprogram* DebugTarget::FindSubProgram(addr_target pc, DbgOnDemandKind onDemandKind)
|
||||||
{
|
{
|
||||||
BP_ZONE("WinDebugger::FindSubProgram");
|
BP_ZONE("WinDebugger::FindSubProgram");
|
||||||
|
@ -812,7 +811,6 @@ DbgSubprogram* DebugTarget::FindSubProgram(addr_target pc, DbgOnDemandKind onDem
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
return dwSubprogram;
|
return dwSubprogram;
|
||||||
|
@ -979,11 +977,9 @@ bool DebugTarget::RollBackStackFrame_ExceptionDirectory(addr_target findPC, CPUR
|
||||||
|
|
||||||
if (flags & 1) // UNW_FLAG_EHANDLER
|
if (flags & 1) // UNW_FLAG_EHANDLER
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (flags & 4) // UNW_FLAG_CHAININFO
|
else if (flags & 4) // UNW_FLAG_CHAININFO
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*if (pcAddress < exceptionDirectoryEntry->mAddress + prologSize)
|
/*if (pcAddress < exceptionDirectoryEntry->mAddress + prologSize)
|
||||||
|
@ -1124,8 +1120,6 @@ bool DebugTarget::RollBackStackFrame_ExceptionDirectory(addr_target findPC, CPUR
|
||||||
*regSP += 6 * sizeof(intptr_target);
|
*regSP += 6 * sizeof(intptr_target);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Note: RCX/RDX are reversed
|
// Note: RCX/RDX are reversed
|
||||||
|
@ -1146,7 +1140,6 @@ bool DebugTarget::RollBackStackFrame_ExceptionDirectory(addr_target findPC, CPUR
|
||||||
return RollBackStackFrame_ExceptionDirectory(dbgModule->mImageBase + chainedRVAStart, registers, outReturnAddressLoc, alreadyRolledBackPC);
|
return RollBackStackFrame_ExceptionDirectory(dbgModule->mImageBase + chainedRVAStart, registers, outReturnAddressLoc, alreadyRolledBackPC);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1204,11 +1197,9 @@ bool DebugTarget::PropogateRegisterUpCallStack_ExceptionDirectory(addr_target fi
|
||||||
|
|
||||||
if (flags & 1) // UNW_FLAG_EHANDLER
|
if (flags & 1) // UNW_FLAG_EHANDLER
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (flags & 4) // UNW_FLAG_CHAININFO
|
else if (flags & 4) // UNW_FLAG_CHAININFO
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*if (pcAddress < exceptionDirectoryEntry->mAddress + prologSize)
|
/*if (pcAddress < exceptionDirectoryEntry->mAddress + prologSize)
|
||||||
|
@ -1366,8 +1357,6 @@ bool DebugTarget::PropogateRegisterUpCallStack_ExceptionDirectory(addr_target fi
|
||||||
regSP += 6 * sizeof(intptr_target);
|
regSP += 6 * sizeof(intptr_target);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Note: RCX/RDX are reversed
|
// Note: RCX/RDX are reversed
|
||||||
|
@ -1416,16 +1405,13 @@ bool DebugTarget::RollBackStackFrame_ExceptionDirectory(addr_target findPC, CPUR
|
||||||
|
|
||||||
if (exceptionDirectoryEntry->mAddress - dbgModule->mImageBase == 0x0000000000048efc)
|
if (exceptionDirectoryEntry->mAddress - dbgModule->mImageBase == 0x0000000000048efc)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & 1) // UNW_FLAG_EHANDLER
|
if (flags & 1) // UNW_FLAG_EHANDLER
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (flags & 4) // UNW_FLAG_CHAININFO
|
else if (flags & 4) // UNW_FLAG_CHAININFO
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*if (pcAddress < exceptionDirectoryEntry->mAddress + prologSize)
|
/*if (pcAddress < exceptionDirectoryEntry->mAddress + prologSize)
|
||||||
|
@ -1548,7 +1534,6 @@ bool DebugTarget::RollBackStackFrame_ExceptionDirectory(addr_target findPC, CPUR
|
||||||
return RollBackStackFrame_ExceptionDirectory(dbgModule->mImageBase + chainedRVAStart, registers, outReturnAddressLoc);
|
return RollBackStackFrame_ExceptionDirectory(dbgModule->mImageBase + chainedRVAStart, registers, outReturnAddressLoc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2217,9 +2202,6 @@ bool DebugTarget::GetVariableIndexRegisterAndOffset(DbgVariable* dwVariable, int
|
||||||
|
|
||||||
//int64 BfDebuggerReadMemory(int64 addr);
|
//int64 BfDebuggerReadMemory(int64 addr);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
addr_target DebugTarget::GetStaticAddress(DbgVariable* dwVariable)
|
addr_target DebugTarget::GetStaticAddress(DbgVariable* dwVariable)
|
||||||
{
|
{
|
||||||
DbgAddrType addrType;
|
DbgAddrType addrType;
|
||||||
|
@ -2439,11 +2421,9 @@ bool DebugTarget::GetValueByNameInBlock(DbgSubprogram* dwSubprogram, DbgBlock* d
|
||||||
if (GetValueByNameInBlock_Helper(dwSubprogram, dwBlock, name, stackFrame, outAddr, outType, outAddrType))
|
if (GetValueByNameInBlock_Helper(dwSubprogram, dwBlock, name, stackFrame, outAddr, outType, outAddrType))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const DbgMemoryFlags DebugTarget::ReadOrigImageData(addr_target address, uint8* data, int size)
|
const DbgMemoryFlags DebugTarget::ReadOrigImageData(addr_target address, uint8* data, int size)
|
||||||
{
|
{
|
||||||
for (auto dwarf : mDbgModules)
|
for (auto dwarf : mDbgModules)
|
||||||
|
@ -2469,7 +2449,6 @@ bool DebugTarget::DecodeInstruction(addr_target address, CPUInst* inst)
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DbgBreakKind DebugTarget::GetDbgBreakKind(addr_target address, CPURegisters* registers, intptr_target* objAddr)
|
DbgBreakKind DebugTarget::GetDbgBreakKind(addr_target address, CPURegisters* registers, intptr_target* objAddr)
|
||||||
|
@ -2484,7 +2463,6 @@ DbgBreakKind DebugTarget::GetDbgBreakKind(addr_target address, CPURegisters* reg
|
||||||
}
|
}
|
||||||
|
|
||||||
return DbgBreakKind_None;
|
return DbgBreakKind_None;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DbgModule* DebugTarget::FindDbgModuleForAddress(addr_target address)
|
DbgModule* DebugTarget::FindDbgModuleForAddress(addr_target address)
|
||||||
|
@ -2614,7 +2592,6 @@ struct VectorRemoveCtx
|
||||||
mVec->RemoveRange(mMatchStartIdx, (int)mVec->size() - mMatchStartIdx);
|
mVec->RemoveRange(mMatchStartIdx, (int)mVec->size() - mMatchStartIdx);
|
||||||
mFinished = true;
|
mFinished = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
void DebugTarget::RemoveTargetData()
|
void DebugTarget::RemoveTargetData()
|
||||||
|
|
|
@ -213,7 +213,6 @@ void DbgHotScanner::ScanSpan(TCFake::Span* span, int expectedStartPage, int memK
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
int* rawTypeIdPtr = NULL;
|
int* rawTypeIdPtr = NULL;
|
||||||
if (mFoundRawAllocDataAddrs.TryAdd(rawAllocDataAddr, NULL, &rawTypeIdPtr))
|
if (mFoundRawAllocDataAddrs.TryAdd(rawAllocDataAddr, NULL, &rawTypeIdPtr))
|
||||||
{
|
{
|
||||||
|
|
|
@ -289,7 +289,6 @@ bool MiniDumpDebugger::PopulateRegisters(CPURegisters* registers)
|
||||||
{
|
{
|
||||||
if (section.mStreamType == ThreadExListStream)
|
if (section.mStreamType == ThreadExListStream)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (section.mStreamType == ThreadListStream)
|
else if (section.mStreamType == ThreadListStream)
|
||||||
{
|
{
|
||||||
|
@ -369,4 +368,3 @@ bool MiniDumpDebugger::WriteMemory(intptr address, void* src, uint64 length)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -60,5 +60,3 @@ public:
|
||||||
};
|
};
|
||||||
|
|
||||||
NS_BF_DBG_END
|
NS_BF_DBG_END
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -766,4 +766,3 @@ String DbgProfiler::GetCallTree(int threadId, bool reverse)
|
||||||
|
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,6 @@ public:
|
||||||
public:
|
public:
|
||||||
Iterator()
|
Iterator()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Iterator& operator++()
|
Iterator& operator++()
|
||||||
|
@ -475,7 +474,6 @@ public:
|
||||||
public:
|
public:
|
||||||
Iterator()
|
Iterator()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Iterator& operator++()
|
Iterator& operator++()
|
||||||
|
|
|
@ -1385,7 +1385,6 @@ void WinDebugger::StopDebugging()
|
||||||
mRunState = RunState_Terminating;
|
mRunState = RunState_Terminating;
|
||||||
BfLogDbg("mRunState = RunState_Terminating\n");
|
BfLogDbg("mRunState = RunState_Terminating\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void WinDebugger::Terminate()
|
void WinDebugger::Terminate()
|
||||||
|
@ -2893,7 +2892,6 @@ void WinDebugger::ContinueDebugEvent()
|
||||||
mContinueEvent.Set();
|
mContinueEvent.Set();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static BOOL CALLBACK WdEnumWindowsProc(HWND hwnd, LPARAM lParam)
|
static BOOL CALLBACK WdEnumWindowsProc(HWND hwnd, LPARAM lParam)
|
||||||
{
|
{
|
||||||
HWND owner = GetWindow(hwnd, GW_OWNER);
|
HWND owner = GetWindow(hwnd, GW_OWNER);
|
||||||
|
@ -3447,7 +3445,6 @@ void WinDebugger::CheckBreakpoint(WdBreakpoint* wdBreakpoint)
|
||||||
for (auto& deferredSrcFileRef : srcFile->mDeferredRefs)
|
for (auto& deferredSrcFileRef : srcFile->mDeferredRefs)
|
||||||
{
|
{
|
||||||
deferredSrcFileRef.mDbgModule->ParseCompileUnit(deferredSrcFileRef.mCompileUnitId);
|
deferredSrcFileRef.mDbgModule->ParseCompileUnit(deferredSrcFileRef.mCompileUnitId);
|
||||||
|
|
||||||
}
|
}
|
||||||
srcFile->mDeferredRefs.Clear();
|
srcFile->mDeferredRefs.Clear();
|
||||||
|
|
||||||
|
@ -3848,7 +3845,6 @@ bool WinDebugger::CheckConditionalBreakpoint(WdBreakpoint* breakpoint, DbgSubpro
|
||||||
{
|
{
|
||||||
if (!error->mIsWarning)
|
if (!error->mIsWarning)
|
||||||
errorStr = error->mError;
|
errorStr = error->mError;
|
||||||
|
|
||||||
}
|
}
|
||||||
String condError = StrFormat("error Conditional breakpoint expression '%s' failed: %s", conditional->mExpr.c_str(), errorStr.c_str());
|
String condError = StrFormat("error Conditional breakpoint expression '%s' failed: %s", conditional->mExpr.c_str(), errorStr.c_str());
|
||||||
mDebugManager->mOutMessages.push_back(condError);
|
mDebugManager->mOutMessages.push_back(condError);
|
||||||
|
@ -3866,7 +3862,6 @@ bool WinDebugger::CheckConditionalBreakpoint(WdBreakpoint* breakpoint, DbgSubpro
|
||||||
}
|
}
|
||||||
else if (!result.mBool)
|
else if (!result.mBool)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
headBreakpoint->mHitCount++;
|
headBreakpoint->mHitCount++;
|
||||||
|
@ -4183,7 +4178,6 @@ bool WinDebugger::CheckNeedsSRetArgument(DbgType* retType)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DbgTypedValue WinDebugger::ReadReturnValue(CPURegisters* registers, DbgType* type)
|
DbgTypedValue WinDebugger::ReadReturnValue(CPURegisters* registers, DbgType* type)
|
||||||
{
|
{
|
||||||
DbgTypedValue retValue;
|
DbgTypedValue retValue;
|
||||||
|
@ -6217,7 +6211,6 @@ static String IntTypeToString(T val, const StringImpl& name, DwDisplayInfo* disp
|
||||||
binary = "'" + binary;
|
binary = "'" + binary;
|
||||||
|
|
||||||
binary = ((val & ((T)1 << i)) ? "1" : "0") + binary;
|
binary = ((val & ((T)1 << i)) ? "1" : "0") + binary;
|
||||||
|
|
||||||
}
|
}
|
||||||
return StrFormat("0b'%s\n%s", binary.c_str(), name.c_str());
|
return StrFormat("0b'%s\n%s", binary.c_str(), name.c_str());
|
||||||
}
|
}
|
||||||
|
@ -7928,7 +7921,6 @@ String WinDebugger::DbgTypedValueToString(const DbgTypedValue& origTypedValue, c
|
||||||
}
|
}
|
||||||
else if ((ptrVal == 0) && (dwValueType->IsCompositeType()))
|
else if ((ptrVal == 0) && (dwValueType->IsCompositeType()))
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DbgTypedValue useTypedValue = typedValue;
|
DbgTypedValue useTypedValue = typedValue;
|
||||||
|
@ -9849,7 +9841,6 @@ String WinDebugger::Evaluate(const StringImpl& expr, DwFormatInfo formatInfo, in
|
||||||
else if (!::isspace((uint8)c))
|
else if (!::isspace((uint8)c))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (!locString.IsEmpty())
|
else if (!locString.IsEmpty())
|
||||||
|
@ -12078,7 +12069,6 @@ String WinDebugger::DisassembleAtRaw(intptr inAddress)
|
||||||
//result += ">";
|
//result += ">";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12118,7 +12108,6 @@ String WinDebugger::DisassembleAt(intptr inAddress)
|
||||||
addr_target addrStart = dwSubProgram->mBlock.mLowPC;
|
addr_target addrStart = dwSubProgram->mBlock.mLowPC;
|
||||||
addr_target addrEnd = dwSubProgram->mBlock.mHighPC;
|
addr_target addrEnd = dwSubProgram->mBlock.mHighPC;
|
||||||
|
|
||||||
|
|
||||||
auto dwCompileUnit = dwSubProgram->mCompileUnit;
|
auto dwCompileUnit = dwSubProgram->mCompileUnit;
|
||||||
{
|
{
|
||||||
FixupLineData(dwCompileUnit);
|
FixupLineData(dwCompileUnit);
|
||||||
|
@ -12444,7 +12433,6 @@ String WinDebugger::DisassembleAt(intptr inAddress)
|
||||||
result += StrFormat("+%x", offset);
|
result += StrFormat("+%x", offset);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -13400,5 +13388,4 @@ void WdAllocTest()
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#endif //!defined BF32 || !defined BF_DBG_64
|
#endif //!defined BF32 || !defined BF_DBG_64
|
|
@ -713,4 +713,3 @@ template<typename T> T WinDebugger::ReadMemory(intptr addr, bool local, bool* fa
|
||||||
addr_target DecodeTargetDataPtr(const char*& strRef);
|
addr_target DecodeTargetDataPtr(const char*& strRef);
|
||||||
|
|
||||||
NS_BF_DBG_END
|
NS_BF_DBG_END
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue