summaryrefslogtreecommitdiff
path: root/architecture.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'architecture.cpp')
-rw-r--r--architecture.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/architecture.cpp b/architecture.cpp
index 576a14e3..f5ef6cc6 100644
--- a/architecture.cpp
+++ b/architecture.cpp
@@ -11,12 +11,13 @@ InstructionInfo::InstructionInfo()
}
-void InstructionInfo::AddBranch(BNBranchType type, uint64_t target)
+void InstructionInfo::AddBranch(BNBranchType type, uint64_t target, Architecture* arch)
{
if (branchCount >= BN_MAX_INSTRUCTION_BRANCHES)
return;
branchType[branchCount] = type;
- branchTarget[branchCount++] = target;
+ branchTarget[branchCount] = target;
+ branchArch[branchCount++] = arch ? arch->GetArchitectureObject() : nullptr;
}
@@ -116,9 +117,9 @@ vector<Ref<Architecture>> Architecture::GetList()
vector<Ref<Architecture>> result;
for (size_t i = 0; i < count; i++)
- result.push_back(new CoreArchitecture(BNNewArchitectureReference(archs[i])));
+ result.push_back(new CoreArchitecture(archs[i]));
- BNFreeArchitectureList(archs, count);
+ BNFreeArchitectureList(archs);
return result;
}