diff --git a/dlls/d3dcompiler_43/compiler.c b/dlls/d3dcompiler_43/compiler.c index 5dce856ff45..33ef91634f4 100644 --- a/dlls/d3dcompiler_43/compiler.c +++ b/dlls/d3dcompiler_43/compiler.c @@ -692,16 +692,23 @@ static HRESULT compile_shader(const char *preproc_shader, const char *target, co return S_OK; } -HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filename, +HRESULT WINAPI D3DCompile2(const void *data, SIZE_T data_size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint, - const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages) + const char *target, UINT sflags, UINT eflags, UINT secondary_flags, + const void *secondary_data, SIZE_T secondary_data_size, ID3DBlob **shader, + ID3DBlob **error_messages) { HRESULT hr; TRACE("data %p, data_size %lu, filename %s, defines %p, include %p, entrypoint %s,\n" - "target %s, sflags %#x, eflags %#x, shader %p, error_messages %p\n", + "target %s, sflags %#x, eflags %#x, secondary_flags %#x, secondary_data %p,\n" + "secondary_data_size %lu, shader %p, error_messages %p\n", data, data_size, debugstr_a(filename), defines, include, debugstr_a(entrypoint), - debugstr_a(target), sflags, eflags, shader, error_messages); + debugstr_a(target), sflags, eflags, secondary_flags, secondary_data, + secondary_data_size, shader, error_messages); + + if (secondary_data) + FIXME("secondary data not implemented yet\n"); if (shader) *shader = NULL; if (error_messages) *error_messages = NULL; @@ -717,6 +724,19 @@ HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filena return hr; } +HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filename, + const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint, + const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages) +{ + TRACE("data %p, data_size %lu, filename %s, defines %p, include %p, entrypoint %s,\n" + "target %s, sflags %#x, eflags %#x, shader %p, error_messages %p\n", + data, data_size, debugstr_a(filename), defines, include, debugstr_a(entrypoint), + debugstr_a(target), sflags, eflags, shader, error_messages); + + return D3DCompile2(data, data_size, filename, defines, include, entrypoint, target, sflags, + eflags, 0, NULL, 0, shader, error_messages); +} + HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, ID3DBlob **shader, ID3DBlob **error_messages) diff --git a/dlls/d3dcompiler_46/d3dcompiler_46.spec b/dlls/d3dcompiler_46/d3dcompiler_46.spec index e36a8c0fa09..1b145c8a401 100644 --- a/dlls/d3dcompiler_46/d3dcompiler_46.spec +++ b/dlls/d3dcompiler_46/d3dcompiler_46.spec @@ -1,6 +1,6 @@ @ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr) @ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr) -@ stub D3DCompile2 +@ stdcall D3DCompile2(ptr long str ptr ptr str str long long long ptr long ptr ptr) @ stdcall D3DCompileFromFile(wstr ptr ptr str str long long ptr ptr) @ stub D3DCompressShaders @ stdcall D3DCreateBlob(long ptr) diff --git a/dlls/d3dcompiler_47/d3dcompiler_47.spec b/dlls/d3dcompiler_47/d3dcompiler_47.spec index a0df93e6fb7..efa47679a31 100644 --- a/dlls/d3dcompiler_47/d3dcompiler_47.spec +++ b/dlls/d3dcompiler_47/d3dcompiler_47.spec @@ -1,6 +1,6 @@ @ stdcall D3DAssemble(ptr long str ptr ptr long ptr ptr) @ stdcall D3DCompile(ptr long str ptr ptr str str long long ptr ptr) -@ stub D3DCompile2 +@ stdcall D3DCompile2(ptr long str ptr ptr str str long long long ptr long ptr ptr) @ stdcall D3DCompileFromFile(wstr ptr ptr str str long long ptr ptr) @ stub D3DCompressShaders @ stdcall D3DCreateBlob(long ptr)