d3dcompiler_43-D3DCompile: Update patchset, add semi-stub for D3DCompile2.

This commit is contained in:
Sebastian Lackner 2015-07-29 18:02:53 +02:00
parent 5a24762b33
commit 76e7b82e31
3 changed files with 106 additions and 29 deletions

View File

@ -1,19 +1,19 @@
From 5175515e29522c768439dd8e4464b1b7416a65f9 Mon Sep 17 00:00:00 2001
From 13f3dd44fe48a06d9b8dafd4b499383cf17ff3e9 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Thu, 23 Jul 2015 19:09:32 +1000
Subject: d3dcompiler: Add D3DCompileFromFile, D3DCompile2 stubs. (try 3)
Subject: d3dcompiler_43: Add D3DCompileFromFile stub. (try 3)
---
dlls/d3dcompiler_43/compiler.c | 22 ++++++++++++++++++++++
dlls/d3dcompiler_46/d3dcompiler_46.spec | 4 ++--
dlls/d3dcompiler_47/d3dcompiler_47.spec | 4 ++--
3 files changed, 26 insertions(+), 4 deletions(-)
dlls/d3dcompiler_43/compiler.c | 9 +++++++++
dlls/d3dcompiler_46/d3dcompiler_46.spec | 2 +-
dlls/d3dcompiler_47/d3dcompiler_47.spec | 2 +-
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/dlls/d3dcompiler_43/compiler.c b/dlls/d3dcompiler_43/compiler.c
index 114b4c1..533740d 100644
index 114b4c1..5dce856 100644
--- a/dlls/d3dcompiler_43/compiler.c
+++ b/dlls/d3dcompiler_43/compiler.c
@@ -763,3 +763,25 @@ HRESULT WINAPI D3DDisassemble(const void *data, SIZE_T size, UINT flags, const c
@@ -763,3 +763,12 @@ HRESULT WINAPI D3DDisassemble(const void *data, SIZE_T size, UINT flags, const c
data, size, flags, comments, disassembly);
return E_NOTIMPL;
}
@ -26,43 +26,28 @@ index 114b4c1..533740d 100644
+
+ return E_NOTIMPL;
+}
+
+HRESULT WINAPI D3DCompile2(const void *srcdata, SIZE_T srcdatasize, const char *sourcename, const D3D_SHADER_MACRO *defines,
+ ID3DInclude *includes, const char *entrypoint, const char *target, UINT flags1, UINT flags2,
+ UINT secondarydataflags, const void *secondarydata, SIZE_T secondarydatasize, ID3DBlob **code,
+ ID3DBlob **errors)
+{
+ FIXME("srcdata %p, srcdatasize %lu, sourcename %s, defines %p, includes %p, entrypoint %s, target %s, "
+ "flags1 %#x, flags2 %#x, secondarydataflags %u, secondarydata %p, secondarydatasize %lu, "
+ "code %p, errors %p\n", srcdata, srcdatasize, debugstr_a(sourcename), defines, includes, debugstr_a(entrypoint),
+ debugstr_a(target), flags1, flags2, secondarydataflags, secondarydata, secondarydatasize, code, errors);
+
+ return E_NOTIMPL;
+}
diff --git a/dlls/d3dcompiler_46/d3dcompiler_46.spec b/dlls/d3dcompiler_46/d3dcompiler_46.spec
index 5811b40..1b145c8a 100644
index 5811b40..e36a8c0 100644
--- a/dlls/d3dcompiler_46/d3dcompiler_46.spec
+++ b/dlls/d3dcompiler_46/d3dcompiler_46.spec
@@ -1,7 +1,7 @@
@ 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
@ stub D3DCompile2
-@ stub D3DCompileFromFile
+@ 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)
@ stub D3DDecompressShaders
diff --git a/dlls/d3dcompiler_47/d3dcompiler_47.spec b/dlls/d3dcompiler_47/d3dcompiler_47.spec
index 40ad977..efa4767 100644
index 40ad977..a0df93e 100644
--- a/dlls/d3dcompiler_47/d3dcompiler_47.spec
+++ b/dlls/d3dcompiler_47/d3dcompiler_47.spec
@@ -1,7 +1,7 @@
@ 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
@ stub D3DCompile2
-@ stub D3DCompileFromFile
+@ 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)

View File

@ -0,0 +1,90 @@
From 8e9d8ee497c06533082707f091339a20f2af5be1 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Wed, 29 Jul 2015 17:58:02 +0200
Subject: d3dcompiler_43: 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)
--
2.4.5

View File

@ -2206,9 +2206,11 @@ fi
# | * dlls/d3dcompiler_43/compiler.c, dlls/d3dcompiler_46/d3dcompiler_46.spec, dlls/d3dcompiler_47/d3dcompiler_47.spec
# |
if test "$enable_d3dcompiler_43_D3DCompile" -eq 1; then
patch_apply d3dcompiler_43-D3DCompile/0001-d3dcompiler-Add-D3DCompileFromFile-D3DCompile2-stubs.patch
patch_apply d3dcompiler_43-D3DCompile/0001-d3dcompiler_43-Add-D3DCompileFromFile-stub.-try-3.patch
patch_apply d3dcompiler_43-D3DCompile/0002-d3dcompiler_43-Implement-semi-stub-for-D3DCompile2.patch
(
echo '+ { "Alistair Leslie-Hughes", "d3dcompiler: Add D3DCompileFromFile, D3DCompile2 stubs.", 3 },';
echo '+ { "Alistair Leslie-Hughes", "d3dcompiler_43: Add D3DCompileFromFile stub.", 3 },';
echo '+ { "Sebastian Lackner", "d3dcompiler_43: Implement semi-stub for D3DCompile2.", 1 },';
) >> "$patchlist"
fi