summaryrefslogtreecommitdiff
path: root/view/elf
diff options
context:
space:
mode:
authorBrandon Miller <brandon@vector35.com>2025-08-21 22:28:09 -0400
committerBrandon Miller <brandon@vector35.com>2025-09-29 07:07:41 -0400
commit5b43c09a23d37c3046320ad2978a1003dfca462c (patch)
tree8d21066c92ca669fe258249f68bd00b0fbae6313 /view/elf
parent0bc967cf0f873a27dca1e7f3a723a0c53db9a68f (diff)
Apply platform types on Hexagon statically linked binaries
Diffstat (limited to 'view/elf')
-rw-r--r--view/elf/elfview.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/view/elf/elfview.cpp b/view/elf/elfview.cpp
index 5bfcd5c8..2b898ad6 100644
--- a/view/elf/elfview.cpp
+++ b/view/elf/elfview.cpp
@@ -2561,6 +2561,12 @@ void ElfView::DefineElfSymbol(BNSymbolType type, const string& incomingName, uin
}
}
+ if (!typeRef && m_arch->GetName() == "hexagon")
+ {
+ // Apply platform types for statically linked Hexagon binaries
+ typeRef = GetDefaultPlatform()->GetFunctionByName(rawName);
+ }
+
// If unable to extract type information, create a default type with the given size and heuristic confidence
if (!typeRef && (size > 0 && size <= 8))
{