summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ToolBox/superpmi/superpmi/neardiffer.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/ToolBox/superpmi/superpmi/neardiffer.cpp b/src/ToolBox/superpmi/superpmi/neardiffer.cpp
index bb0c67fc34..0256cb83da 100644
--- a/src/ToolBox/superpmi/superpmi/neardiffer.cpp
+++ b/src/ToolBox/superpmi/superpmi/neardiffer.cpp
@@ -100,7 +100,19 @@ bool NearDiffer::InitAsmDiff()
return false;
}
- corAsmDiff = (*g_PtrNewDiffer)(Target_Host, &CorPrinter, NearDiffer::CoreDisCompareOffsetsCallback);
+ TargetArch coreDisTargetArchitecture = Target_Host;
+#ifdef _TARGET_AMD64_
+ if ((TargetArchitecture != nullptr) && (0 == _stricmp(TargetArchitecture, "arm64")))
+ {
+ coreDisTargetArchitecture = Target_Arm64;
+ }
+#elif defined(_TARGET_X86_)
+ if ((TargetArchitecture != nullptr) && (0 == _stricmp(TargetArchitecture, "arm")))
+ {
+ coreDisTargetArchitecture = Target_Thumb;
+ }
+#endif
+ corAsmDiff = (*g_PtrNewDiffer)(coreDisTargetArchitecture, &CorPrinter, NearDiffer::CoreDisCompareOffsetsCallback);
}
#endif // USE_COREDISTOOLS