From 983c7f4f21855676bf9ea20dff4e3f603a86e7c0 Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Mon, 26 Jan 2015 00:50:25 -0600 Subject: [PATCH] [Android] Select the AArch64 recompiler core by default if shown to support ARMv8. --- .../dolphinemu/dolphinemu/settings/UserPreferences.java | 7 ++++++- Source/Core/Core/ConfigManager.cpp | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java b/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java index 1cfeb5cbae..161f147f34 100644 --- a/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java +++ b/Source/Android/src/org/dolphinemu/dolphinemu/settings/UserPreferences.java @@ -10,6 +10,7 @@ import org.dolphinemu.dolphinemu.NativeLibrary; import android.content.Context; import android.content.SharedPreferences; +import android.os.Build; import android.preference.PreferenceManager; /** @@ -39,7 +40,11 @@ public final class UserPreferences SharedPreferences.Editor editor = prefs.edit(); // Add the settings. - editor.putString("cpuCorePref", getConfig("Dolphin.ini", "Core", "CPUCore", "3")); + if (Build.CPU_ABI.contains("arm64")) + editor.putString("cpuCorePref", getConfig("Dolphin.ini", "Core", "CPUCore", "4")); + else + editor.putString("cpuCorePref", getConfig("Dolphin.ini", "Core", "CPUCore", "3")); + editor.putBoolean("dualCorePref", getConfig("Dolphin.ini", "Core", "CPUThread", "False").equals("True")); editor.putBoolean("fastmemPref", getConfig("Dolphin.ini", "Core", "Fastmem", "False").equals("True")); diff --git a/Source/Core/Core/ConfigManager.cpp b/Source/Core/Core/ConfigManager.cpp index 1ad45b2083..b2af3599d3 100644 --- a/Source/Core/Core/ConfigManager.cpp +++ b/Source/Core/Core/ConfigManager.cpp @@ -542,6 +542,8 @@ void SConfig::LoadCoreSettings(IniFile& ini) core->Get("CPUCore", &m_LocalCoreStartupParameter.iCPUCore, SCoreStartupParameter::CORE_JIT64); #elif _M_ARM_32 core->Get("CPUCore", &m_LocalCoreStartupParameter.iCPUCore, SCoreStartupParameter::CORE_JITARM); +#elif _M_ARM_64 + core->Get("CPUCore", &m_LocalCoreStartupParameter.iCPUCore, SCoreStartupParameter::CORE_JITARM64); #else core->Get("CPUCore", &m_LocalCoreStartupParameter.iCPUCore, SCoreStartupParameter::CORE_INTERPRETER); #endif