From 94712ea06f694d02e8490efe7664054a037a9c75 Mon Sep 17 00:00:00 2001 From: mitaclaw <140017135+mitaclaw@users.noreply.github.com> Date: Sat, 6 Apr 2024 09:14:15 -0700 Subject: [PATCH] Android: Access Software JIT Profiling --- .../features/settings/model/BooleanSetting.kt | 6 ++++++ .../settings/ui/SettingsFragmentPresenter.kt | 20 +++++++++++++++++++ .../app/src/main/res/values/strings.xml | 3 +++ 3 files changed, 29 insertions(+) diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/BooleanSetting.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/BooleanSetting.kt index 6fddbe6b43..331ad7fa09 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/BooleanSetting.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/BooleanSetting.kt @@ -214,6 +214,12 @@ enum class BooleanSetting( "JitRegisterCacheOff", false ), + MAIN_DEBUG_JIT_ENABLE_PROFILING( + Settings.FILE_DOLPHIN, + Settings.SECTION_DEBUG, + "JitEnableProfiling", + false + ), MAIN_EMULATE_SKYLANDER_PORTAL( Settings.FILE_DOLPHIN, Settings.SECTION_EMULATED_USB_DEVICES, diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt index a3ec018b46..6de39ed1e9 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt @@ -1978,6 +1978,26 @@ class SettingsFragmentPresenter( ) ) + sl.add(HeaderSetting(context, R.string.debug_jit_profiling_header, 0)) + sl.add( + SwitchSetting( + context, + BooleanSetting.MAIN_DEBUG_JIT_ENABLE_PROFILING, + R.string.debug_jit_enable_block_profiling, + 0 + ) + ) + sl.add( + RunRunnable( + context, + R.string.debug_jit_write_block_log_dump, + 0, + 0, + 0, + true + ) { NativeLibrary.WriteJitBlockLogDump() } + ) + sl.add(HeaderSetting(context, R.string.debug_jit_header, 0)) sl.add( SwitchSetting( diff --git a/Source/Android/app/src/main/res/values/strings.xml b/Source/Android/app/src/main/res/values/strings.xml index 5dde637d7d..360e5006a0 100644 --- a/Source/Android/app/src/main/res/values/strings.xml +++ b/Source/Android/app/src/main/res/values/strings.xml @@ -406,6 +406,9 @@ Disable Fastmem Disable Fastmem Arena Disable Large Entry Points Map + Jit Profiling + Enable Jit Block Profiling + Write Jit Block Log Dump Jit Jit Disabled Jit Load Store Disabled