Sebastian Lackner : d3dcompiler: Implement semi-stub for D3DCompile2.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Aug 17 09:01:11 CDT 2015


Module: wine
Branch: master
Commit: e0a9ea6c684a6579b5deafc4cd6383e247b81079
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=e0a9ea6c684a6579b5deafc4cd6383e247b81079

Author: Sebastian Lackner <sebastian at fds-team.de>
Date:   Wed Jul 29 17:58:02 2015 +0200

d3dcompiler: Implement semi-stub for D3DCompile2.

---

 dlls/d3dcompiler_43/compiler.c          | 28 ++++++++++++++++++++++++----
 dlls/d3dcompiler_46/d3dcompiler_46.spec |  2 +-
 dlls/d3dcompiler_47/d3dcompiler_47.spec |  2 +-
 3 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/dlls/d3dcompiler_43/compiler.c b/dlls/d3dcompiler_43/compiler.c
index 5dce856..33ef916 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 e36a8c0..1b145c8a 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 a0df93e..efa4767 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)




More information about the wine-cvs mailing list