diff options
Diffstat (limited to 'ARMeilleure')
| -rw-r--r-- | ARMeilleure/Translation/Translator.cs | 5 |
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); |
