summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorAlexander Taylor <alex@vector35.com>2024-03-21 13:03:39 -0400
committerAlexander Taylor <alex@vector35.com>2024-03-21 13:03:39 -0400
commitda3a8dda54cfb490013c3da3731efd25f0e2bb96 (patch)
tree6a2e32b133c092722e3d3d4ce0f2e63f8d29d77b /platform
parent25e2fdff0f8ce5c57548d09bbd56c84b73b5b0a0 (diff)
Add Motorola M-CORE Linux platform support.
Diffstat (limited to 'platform')
-rw-r--r--platform/linux/platform_linux.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/platform/linux/platform_linux.cpp b/platform/linux/platform_linux.cpp
index 3bbb7248..0102fa42 100644
--- a/platform/linux/platform_linux.cpp
+++ b/platform/linux/platform_linux.cpp
@@ -460,6 +460,30 @@ extern "C"
}
#ifdef ULTIMATE_EDITION
+ Ref<Architecture> mcore_le = Architecture::GetByName("mcore_le");
+ if (mcore_le)
+ {
+ Ref<Platform> platform;
+
+ platform = new LinuxCSkyV1Platform(mcore_le, "linux-mcore_le");
+ Platform::Register("linux", platform);
+ // Linux binaries sometimes have an OS identifier of zero, even though 3 is the correct one
+ BinaryViewType::RegisterPlatform("ELF", 0, platform);
+ BinaryViewType::RegisterPlatform("ELF", 3, platform);
+ }
+
+ Ref<Architecture> mcore_be = Architecture::GetByName("mcore_be");
+ if (mcore_be)
+ {
+ Ref<Platform> platform;
+
+ platform = new LinuxCSkyV1Platform(mcore_be, "linux-mcore_be");
+ Platform::Register("linux", platform);
+ // Linux binaries sometimes have an OS identifier of zero, even though 3 is the correct one
+ BinaryViewType::RegisterPlatform("ELF", 0, platform);
+ BinaryViewType::RegisterPlatform("ELF", 3, platform);
+ }
+
Ref<Architecture> cskyv1 = Architecture::GetByName("csky_le_v1");
if (cskyv1)
{