Wiring up register read/write from JIT -> GPU.

This commit is contained in:
Ben Vanik
2013-05-31 21:22:00 -07:00
parent edf3a9155b
commit ef0032ecff
14 changed files with 164 additions and 12 deletions

View File

@@ -31,6 +31,8 @@ public:
X64Emitter(xe_memory_ref memory);
~X64Emitter();
void SetupGpuPointers(void* gpu_this, void* gpu_read, void* gpu_write);
void Lock();
void Unlock();
@@ -55,6 +57,9 @@ public:
int GenerateIndirectionBranch(uint32_t cia, AsmJit::GpVar& target,
bool lk, bool likely_local);
AsmJit::GpVar read_gpu_register(uint32_t r);
void write_gpu_register(uint32_t r, AsmJit::GpVar& v);
void FillRegisters();
void SpillRegisters();
@@ -117,6 +122,10 @@ private:
GlobalExports global_exports_;
xe_mutex_t* lock_;
void* gpu_this_;
void* gpu_read_;
void* gpu_write_;
AsmJit::Logger* logger_;
AsmJit::X86Assembler assembler_;
AsmJit::X86Compiler compiler_;