Kaynağa Gözat

UserspaceEmulator: Set up a very basic program entry stack

Andreas Kling 5 yıl önce
ebeveyn
işleme
0eab5659f8
1 değiştirilmiş dosya ile 5 ekleme ve 0 silme
  1. 5 0
      DevTools/UserspaceEmulator/Emulator.cpp

+ 5 - 0
DevTools/UserspaceEmulator/Emulator.cpp

@@ -100,6 +100,11 @@ void Emulator::setup_stack()
     auto stack_region = make<SimpleRegion>(stack_location, stack_size);
     m_mmu.add_region(move(stack_region));
     m_cpu.set_esp(stack_location + stack_size);
+
+    m_cpu.push32(0);
+    m_cpu.push32(0);
+    m_cpu.push32(0);
+    m_cpu.push32(0);
 }
 
 int Emulator::exec(X86::SimpleInstructionStream& stream, u32 base)