From 8d621c51b2797fda7b1dc22243dde611cfc04f68 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Tue, 23 Dec 2025 13:12:02 -0700 Subject: Refactor calling conventions to support correct representation of structures --- binaryview.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'binaryview.cpp') diff --git a/binaryview.cpp b/binaryview.cpp index 6c4312c0..da6f5b0f 100644 --- a/binaryview.cpp +++ b/binaryview.cpp @@ -5847,6 +5847,26 @@ Ref BinaryView::GetNextRelocation(uint64_t addr, uint64_t maxAddr) } +vector BinaryView::DerefParameterNamedTypeRefs(const vector& params) +{ + vector 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; -- cgit v1.3.1