Wiring up register read/write from JIT -> GPU.
This commit is contained in:
@@ -23,3 +23,12 @@ D3D11GraphicsSystem::D3D11GraphicsSystem(const CreationParams* params) :
|
||||
|
||||
D3D11GraphicsSystem::~D3D11GraphicsSystem() {
|
||||
}
|
||||
|
||||
uint64_t D3D11GraphicsSystem::ReadRegister(uint32_t r) {
|
||||
XELOGGPU("ReadRegister(%.4X)", r);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void D3D11GraphicsSystem::WriteRegister(uint32_t r, uint64_t value) {
|
||||
XELOGGPU("WriteRegister(%.4X, %.8X)", r, value);
|
||||
}
|
||||
|
||||
@@ -28,6 +28,9 @@ class D3D11GraphicsSystem : public GraphicsSystem {
|
||||
public:
|
||||
D3D11GraphicsSystem(const CreationParams* params);
|
||||
virtual ~D3D11GraphicsSystem();
|
||||
|
||||
virtual uint64_t ReadRegister(uint32_t r);
|
||||
virtual void WriteRegister(uint32_t r, uint64_t value);
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -20,6 +20,8 @@ namespace gpu {
|
||||
class CreationParams {
|
||||
public:
|
||||
xe_memory_ref memory;
|
||||
|
||||
CreationParams() : memory(NULL) {}
|
||||
};
|
||||
|
||||
|
||||
@@ -29,6 +31,16 @@ public:
|
||||
|
||||
xe_memory_ref memory();
|
||||
|
||||
virtual uint64_t ReadRegister(uint32_t r) = 0;
|
||||
virtual void WriteRegister(uint32_t r, uint64_t value) = 0;
|
||||
|
||||
static uint64_t ReadRegisterThunk(GraphicsSystem* this_ptr, uint32_t r) {
|
||||
return this_ptr->ReadRegister(r);
|
||||
}
|
||||
static void WriteRegisterThunk(GraphicsSystem* this_ptr, uint32_t r, uint64_t value) {
|
||||
this_ptr->WriteRegister(r, value);
|
||||
}
|
||||
|
||||
protected:
|
||||
GraphicsSystem(const CreationParams* params);
|
||||
|
||||
|
||||
@@ -23,3 +23,12 @@ NopGraphicsSystem::NopGraphicsSystem(const CreationParams* params) :
|
||||
|
||||
NopGraphicsSystem::~NopGraphicsSystem() {
|
||||
}
|
||||
|
||||
uint64_t NopGraphicsSystem::ReadRegister(uint32_t r) {
|
||||
XELOGGPU("ReadRegister(%.4X)", r);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void NopGraphicsSystem::WriteRegister(uint32_t r, uint64_t value) {
|
||||
XELOGGPU("WriteRegister(%.4X, %.8X)", r, value);
|
||||
}
|
||||
|
||||
@@ -25,6 +25,9 @@ class NopGraphicsSystem : public GraphicsSystem {
|
||||
public:
|
||||
NopGraphicsSystem(const CreationParams* params);
|
||||
virtual ~NopGraphicsSystem();
|
||||
|
||||
virtual uint64_t ReadRegister(uint32_t r);
|
||||
virtual void WriteRegister(uint32_t r, uint64_t value);
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user