summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/yuzu/configuration/configure_cpu.ui55
1 files changed, 54 insertions, 1 deletions
diff --git a/src/yuzu/configuration/configure_cpu.ui b/src/yuzu/configuration/configure_cpu.ui
index 27bd4aa42..308e70356 100644
--- a/src/yuzu/configuration/configure_cpu.ui
+++ b/src/yuzu/configuration/configure_cpu.ui
@@ -76,7 +76,7 @@
<bool>1</bool>
</property>
<property name="text">
- <string>Keep these enabled. For debugging only.</string>
+ <string>Keep all of these enabled. For debugging only.</string>
</property>
</widget>
</item>
@@ -85,6 +85,13 @@
<property name="text">
<string>Enable inline page tables</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div style="white-space: nowrap"&gt;This optimization speeds up memory accesses by the guest program.&lt;/div&gt;
+ &lt;div style="white-space: nowrap"&gt;Enabling it inlines accesses to PageTable::pointers into emitted code.&lt;/div&gt;
+ &lt;div style="white-space: nowrap"&gt;Disabling this forces all memory accesses to go through the Memory::Read/Memory::Write functions.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -92,6 +99,11 @@
<property name="text">
<string>Enable block linking</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div&gt;This optimization avoids dispatcher lookups by allowing emitted basic blocks to jump directly to other basic blocks if the destination PC is static.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -99,6 +111,11 @@
<property name="text">
<string>Enable return stack buffer</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div&gt;This optimization avoids dispatcher lookups by keeping track potential return addresses of BL instructions. This approximates what happens with a return stack buffer on a real CPU.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -106,6 +123,11 @@
<property name="text">
<string>Enable fast dispatcher</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div&gt;Enable a two-tiered dispatch system. A faster dispatcher written in assembly has a small MRU cache of jump destinations is used first. If that fails, dispatch falls back to the slower C++ dispatcher.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -113,6 +135,11 @@
<property name="text">
<string>Enable context elimination</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div&gt;Enables an IR optimization that reduces unnecessary accesses to the CPU context structure.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -120,6 +147,11 @@
<property name="text">
<string>Enable constant propagation</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div&gt;Enables IR optimizations that involve constant propagation.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -127,6 +159,11 @@
<property name="text">
<string>Enable miscellaneous optimizations</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div&gt;Enables miscellaneous IR optimizations.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
<item>
@@ -134,6 +171,12 @@
<property name="text">
<string>Enable misalignment check reduction</string>
</property>
+ <property name="toolTip">
+ <string>
+ &lt;div style="white-space: nowrap"&gt;When enabled, a misalignment is only triggered when an access crosses a page boundary.&lt;/div&gt;
+ &lt;div style="white-space: nowrap"&gt;When disabled, a misalignment is triggered on all misaligned accesses.&lt;/div&gt;
+ </string>
+ </property>
</widget>
</item>
</layout>
@@ -154,6 +197,16 @@
</property>
</spacer>
</item>
+ <item>
+ <widget class="QLabel" name="label_disable_info">
+ <property name="text">
+ <string>CPU settings are available only when game is not running.</string>
+ </property>
+ <property name="wordWrap">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
<resources/>