1
0
mirror of https://github.com/libretro/RetroArch synced 2024-07-05 09:48:42 +00:00

(D3D) Get rid of unnecesary inline functions

This commit is contained in:
libretroadmin 2022-06-04 23:14:15 +02:00
parent 85ca66bfad
commit 8b5b1ce96d
5 changed files with 33 additions and 63 deletions

View File

@ -133,7 +133,7 @@ bool d3d_compile(const char* src, size_t size,
{
if (error_msg)
{
const char* msg = (const char*)D3DGetBufferPointer(error_msg);
const char* msg = (const char*)error_msg->lpVtbl->GetBufferPointer(error_msg);
RARCH_ERR("D3DCompile failed :\n%s\n", msg);
/* Place a breakpoint here, if you want,
to see shader compilation issues */
@ -162,7 +162,7 @@ bool d3d_compile_from_file(LPCWSTR filename,
if (error_msg)
{
RARCH_ERR("D3DCompile failed :\n%s\n",
(const char*)D3DGetBufferPointer(error_msg));
(const char*)error_msg->lpVtbl->GetBufferPointer(error_msg));
Release(error_msg);
}
return false;

View File

@ -23,49 +23,7 @@
#include <d3dcompiler.h>
/* auto-generated */
typedef ID3DBlob* D3DBlob;
typedef ID3DDestructionNotifier* D3DDestructionNotifier;
#if !defined(__cplusplus) || defined(CINTERFACE)
static INLINE ULONG D3DReleaseBlob(D3DBlob blob)
{
return blob->lpVtbl->Release(blob);
}
static INLINE LPVOID D3DGetBufferPointer(D3DBlob blob)
{
return blob->lpVtbl->GetBufferPointer(blob);
}
static INLINE SIZE_T D3DGetBufferSize(D3DBlob blob)
{
return blob->lpVtbl->GetBufferSize(blob);
}
static INLINE ULONG D3DReleaseDestructionNotifier(
D3DDestructionNotifier destruction_notifier)
{
return destruction_notifier->lpVtbl->Release(destruction_notifier);
}
static INLINE HRESULT D3DRegisterDestructionCallback(
D3DDestructionNotifier destruction_notifier,
PFN_DESTRUCTION_CALLBACK callback_fn,
void* data,
UINT* callback_id)
{
return destruction_notifier->lpVtbl->RegisterDestructionCallback(
destruction_notifier, callback_fn, data, callback_id);
}
static INLINE HRESULT
D3DUnregisterDestructionCallback(
D3DDestructionNotifier destruction_notifier, UINT callback_id)
{
return destruction_notifier->lpVtbl->UnregisterDestructionCallback(
destruction_notifier, callback_id);
}
#endif
/* end of auto-generated */
bool d3d_compile(const char* src, size_t size,

View File

@ -413,18 +413,22 @@ static bool d3d10_init_shader(
if (ps_code)
device->lpVtbl->CreatePixelShader(device, D3DGetBufferPointer(ps_code),
D3DGetBufferSize(ps_code), &out->ps);
device->lpVtbl->CreatePixelShader(device,
ps_code->lpVtbl->GetBufferPointer(ps_code),
ps_code->lpVtbl->GetBufferSize(ps_code),
&out->ps);
if (gs_code)
device->lpVtbl->CreateGeometryShader(
device, D3DGetBufferPointer(gs_code), D3DGetBufferSize(gs_code),
device,
gs_code->lpVtbl->GetBufferPointer(gs_code),
gs_code->lpVtbl->GetBufferSize(gs_code),
&out->gs);
if (vs_code)
{
LPVOID buf_ptr = D3DGetBufferPointer(vs_code);
SIZE_T buf_size = D3DGetBufferSize(vs_code);
LPVOID buf_ptr = vs_code->lpVtbl->GetBufferPointer(vs_code);
SIZE_T buf_size = vs_code->lpVtbl->GetBufferSize(vs_code);
device->lpVtbl->CreateVertexShader(device, buf_ptr, buf_size, &out->vs);
if (input_element_descs)
device->lpVtbl->CreateInputLayout(

View File

@ -581,18 +581,22 @@ static bool d3d11_init_shader(
if (ps_code)
device->lpVtbl->CreatePixelShader(
device, D3DGetBufferPointer(ps_code), D3DGetBufferSize(ps_code),
device,
ps_code->lpVtbl->GetBufferPointer(ps_code),
ps_code->lpVtbl->GetBufferSize(ps_code),
NULL, &out->ps);
if (gs_code)
device->lpVtbl->CreateGeometryShader(
device, D3DGetBufferPointer(gs_code), D3DGetBufferSize(gs_code),
device,
gs_code->lpVtbl->GetBufferPointer(gs_code),
gs_code->lpVtbl->GetBufferSize(gs_code),
NULL, &out->gs);
if (vs_code)
{
LPVOID buf_ptr = D3DGetBufferPointer(vs_code);
SIZE_T buf_size = D3DGetBufferSize(vs_code);
LPVOID buf_ptr = vs_code->lpVtbl->GetBufferPointer(vs_code);
SIZE_T buf_size = vs_code->lpVtbl->GetBufferSize(vs_code);
device->lpVtbl->CreateVertexShader(device, buf_ptr, buf_size, NULL, &out->vs);
if (input_element_descs)
device->lpVtbl->CreateInputLayout(device, input_element_descs, num_elements,

View File

@ -551,8 +551,8 @@ static void d3d12_init_pipeline(
{
if (vs_code)
{
desc->VS.pShaderBytecode = D3DGetBufferPointer(vs_code);
desc->VS.BytecodeLength = D3DGetBufferSize(vs_code);
desc->VS.pShaderBytecode = vs_code->lpVtbl->GetBufferPointer(vs_code);
desc->VS.BytecodeLength = vs_code->lpVtbl->GetBufferSize(vs_code);
}
else
{
@ -562,8 +562,8 @@ static void d3d12_init_pipeline(
if (ps_code)
{
desc->PS.pShaderBytecode = D3DGetBufferPointer(ps_code);
desc->PS.BytecodeLength = D3DGetBufferSize(ps_code);
desc->PS.pShaderBytecode = ps_code->lpVtbl->GetBufferPointer(ps_code);
desc->PS.BytecodeLength = ps_code->lpVtbl->GetBufferSize(ps_code);
}
else
{
@ -573,8 +573,8 @@ static void d3d12_init_pipeline(
if (gs_code)
{
desc->GS.pShaderBytecode = D3DGetBufferPointer(gs_code);
desc->GS.BytecodeLength = D3DGetBufferSize(gs_code);
desc->GS.pShaderBytecode = gs_code->lpVtbl->GetBufferPointer(gs_code);
desc->GS.BytecodeLength = gs_code->lpVtbl->GetBufferSize(gs_code);
}
else
{
@ -1085,8 +1085,8 @@ static bool d3d12_gfx_init_pipelines(d3d12_video_t* d3d12)
if (!d3d_compile(shader, sizeof(shader), NULL, "CSMain", "cs_5_0", &cs_code))
goto error;
desc.CS.pShaderBytecode = D3DGetBufferPointer(cs_code);
desc.CS.BytecodeLength = D3DGetBufferSize(cs_code);
desc.CS.pShaderBytecode = cs_code->lpVtbl->GetBufferPointer(cs_code);
desc.CS.BytecodeLength = cs_code->lpVtbl->GetBufferSize(cs_code);
if (FAILED(D3D12CreateComputePipelineState(d3d12->device, &desc, &d3d12->mipmapgen_pipe)))
Release(cs_code);
cs_code = NULL;
@ -1452,13 +1452,17 @@ static bool d3d12_create_root_signature(
if (error)
{
RARCH_ERR(
"[D3D12]: CreateRootSignature failed : %s", (const char*)D3DGetBufferPointer(error));
"[D3D12]: CreateRootSignature failed : %s", (const
char*)error->lpVtbl->GetBufferPointer(error));
Release(error);
return false;
}
D3D12CreateRootSignature(
device, 0, D3DGetBufferPointer(signature), D3DGetBufferSize(signature), out);
device, 0,
signature->lpVtbl->GetBufferPointer(signature),
signature->lpVtbl->GetBufferSize(signature),
out);
Release(signature);
return true;