summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
Diffstat (limited to 'platform')
-rw-r--r--platform/linux/platform_linux.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/platform/linux/platform_linux.cpp b/platform/linux/platform_linux.cpp
index 7743daa9..f2902068 100644
--- a/platform/linux/platform_linux.cpp
+++ b/platform/linux/platform_linux.cpp
@@ -545,9 +545,10 @@ extern "C"
Ref<Architecture> mips3eb = Architecture::GetByName("mips3");
Ref<Architecture> mips64eb = Architecture::GetByName("mips64");
Ref<Architecture> cnmips64eb = Architecture::GetByName("cavium-mips64");
- if (mipsel && mipseb && mips64eb && cnmips64eb && mips3el && mips3eb)
+ Ref<Architecture> cnmips64el = Architecture::GetByName("cavium-mipsel64");
+ if (mipsel && mipseb && mips64eb && cnmips64eb && cnmips64el && mips3el && mips3eb)
{
- Ref<Platform> platformLE, platformBE, platformBE64, platformBE64cn, platform3LE, platform3BE;
+ Ref<Platform> platformLE, platformBE, platformBE64, platformBE64cn, platformLE64cn, platform3LE, platform3BE;
platformLE = new LinuxMipsPlatform(mipsel, "linux-mipsel");
platformBE = new LinuxMipsPlatform(mipseb, "linux-mips");
@@ -555,12 +556,14 @@ extern "C"
platform3BE = new LinuxMipsPlatform(mips3eb, "linux-mips3");
platformBE64 = new LinuxMips64Platform(mips64eb, "linux-mips64");
platformBE64cn = new LinuxMips64Platform(cnmips64eb, "linux-cnmips64");
+ platformLE64cn = new LinuxMips64Platform(cnmips64el, "linux-cnmipsel64");
Platform::Register("linux", platformLE);
Platform::Register("linux", platformBE);
Platform::Register("linux", platform3LE);
Platform::Register("linux", platform3BE);
Platform::Register("linux", platformBE64);
Platform::Register("linux", platformBE64cn);
+ Platform::Register("linux", platformLE64cn);
// Linux binaries sometimes have an OS identifier of zero, even though 3 is the correct one
BinaryViewType::RegisterPlatform("ELF", 0, platformLE);
BinaryViewType::RegisterPlatform("ELF", 0, platformBE);
@@ -568,12 +571,14 @@ extern "C"
BinaryViewType::RegisterPlatform("ELF", 0, platform3BE);
BinaryViewType::RegisterPlatform("ELF", 0, platformBE64);
BinaryViewType::RegisterPlatform("ELF", 0, platformBE64cn);
+ BinaryViewType::RegisterPlatform("ELF", 0, platformLE64cn);
BinaryViewType::RegisterPlatform("ELF", 3, platformLE);
BinaryViewType::RegisterPlatform("ELF", 3, platformBE);
BinaryViewType::RegisterPlatform("ELF", 3, platform3LE);
BinaryViewType::RegisterPlatform("ELF", 3, platform3BE);
BinaryViewType::RegisterPlatform("ELF", 3, platformBE64);
BinaryViewType::RegisterPlatform("ELF", 3, platformBE64cn);
+ BinaryViewType::RegisterPlatform("ELF", 3, platformLE64cn);
}
Ref<Architecture> rv32 = Architecture::GetByName("rv32gc");