diff options
| author | Rusty Wagner <rusty.wagner@gmail.com> | 2025-12-23 13:12:02 -0700 |
|---|---|---|
| committer | Rusty Wagner <rusty.wagner@gmail.com> | 2026-05-22 16:30:56 -0400 |
| commit | 8d621c51b2797fda7b1dc22243dde611cfc04f68 (patch) | |
| tree | ba5e6a90e644d21d13e75dabcbd0cc747444443a /binaryview.cpp | |
| parent | 08e34ac325743085911f96b62c81d9a1f2127806 (diff) | |
Refactor calling conventions to support correct representation of structures
Diffstat (limited to 'binaryview.cpp')
| -rw-r--r-- | binaryview.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/binaryview.cpp b/binaryview.cpp index 6c4312c0..da6f5b0f 100644 --- a/binaryview.cpp +++ b/binaryview.cpp @@ -5847,6 +5847,26 @@ Ref<Relocation> BinaryView::GetNextRelocation(uint64_t addr, uint64_t maxAddr) } +vector<FunctionParameter> BinaryView::DerefParameterNamedTypeRefs(const vector<FunctionParameter>& params) +{ + vector<FunctionParameter> result; + result.reserve(params.size()); + for (auto& i : params) + result.emplace_back(i.name, i.type->DerefNamedTypeReference(this)->WithConfidence(i.type.GetConfidence()), + i.locationSource, i.location); + return result; +} + + +ReturnValue BinaryView::DerefReturnValueNamedTypeRefs(const ReturnValue& returnValue) +{ + ReturnValue result = returnValue; + if (result.type.GetValue()) + result.type.SetValue(result.type->DerefNamedTypeReference(this)); + return result; +} + + Relocation::Relocation(BNRelocation* reloc) { m_object = reloc; |
