aboutsummaryrefslogtreecommitdiff
path: root/ARMeilleure
diff options
context:
space:
mode:
Diffstat (limited to 'ARMeilleure')
-rw-r--r--ARMeilleure/Translation/Translator.cs5
1 files changed, 5 insertions, 0 deletions
diff --git a/ARMeilleure/Translation/Translator.cs b/ARMeilleure/Translation/Translator.cs
index 0c9d6842..80f7b962 100644
--- a/ARMeilleure/Translation/Translator.cs
+++ b/ARMeilleure/Translation/Translator.cs
@@ -31,6 +31,9 @@ namespace ARMeilleure.Translation
private volatile int _threadCount;
+ // FIXME: Remove this once the init logic of the emulator will be redone
+ public static ManualResetEvent IsReadyForTranslation = new ManualResetEvent(false);
+
public Translator(IJitMemoryAllocator allocator, IMemoryManager memory)
{
_memory = memory;
@@ -83,6 +86,8 @@ namespace ARMeilleure.Translation
{
if (Interlocked.Increment(ref _threadCount) == 1)
{
+ IsReadyForTranslation.WaitOne();
+
if (Ptc.State == PtcState.Enabled)
{
Ptc.MakeAndSaveTranslations(_funcs, _memory, _jumpTable);