aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Tests/Cpu/CpuTest.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2019-02-04 18:26:05 -0300
committerGitHub <noreply@github.com>2019-02-04 18:26:05 -0300
commita694420d11ef74e4f0bf473be2b6f64635bc89c7 (patch)
tree6c44e7a0633dca7b54d99ac3f01f0648fa602559 /Ryujinx.Tests/Cpu/CpuTest.cs
parentf5b4f6ccc4815cfac1fa3c103d8941a26d152d8a (diff)
Implement speculative translation on the CPU (#515)
* Implement speculative translation on the cpu, and change the way how branches to unknown or untranslated addresses works * Port t0opt changes and other cleanups * Change namespace from translation related classes to ChocolArm64.Translation, other minor tweaks * Fix typo * Translate higher quality code for indirect jumps aswell, and on some cases that were missed when lower quality (tier 0) code was available * Remove debug print * Remove direct argument passing optimization, and enable tail calls for BR instructions * Call delegates directly with Callvirt rather than calling Execute, do not emit calls for tier 0 code * Remove unused property * Rename argument on ArmSubroutine delegate
Diffstat (limited to 'Ryujinx.Tests/Cpu/CpuTest.cs')
-rw-r--r--Ryujinx.Tests/Cpu/CpuTest.cs5
1 files changed, 4 insertions, 1 deletions
diff --git a/Ryujinx.Tests/Cpu/CpuTest.cs b/Ryujinx.Tests/Cpu/CpuTest.cs
index b970e055..47feb573 100644
--- a/Ryujinx.Tests/Cpu/CpuTest.cs
+++ b/Ryujinx.Tests/Cpu/CpuTest.cs
@@ -1,6 +1,7 @@
using ChocolArm64;
using ChocolArm64.Memory;
using ChocolArm64.State;
+using ChocolArm64.Translation;
using NUnit.Framework;
@@ -48,10 +49,12 @@ namespace Ryujinx.Tests.Cpu
_entryPoint = Position;
- Translator translator = new Translator();
_ramPointer = Marshal.AllocHGlobal(new IntPtr(_size));
_memory = new MemoryManager(_ramPointer);
_memory.Map(Position, 0, _size);
+
+ Translator translator = new Translator(_memory);
+
_thread = new CpuThread(translator, _memory, _entryPoint);
if (_unicornAvailable)