[PATCH vkd3d 1/4] libs/vkd3d-shader: Factor out shader_dump_version().
Józef Kucia
joseph.kucia at gmail.com
Tue Jun 5 06:52:56 CDT 2018
From: Józef Kucia <jkucia at codeweavers.com>
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
libs/vkd3d-shader/trace.c | 58 +++++++++++++++++++++++++----------------------
1 file changed, 31 insertions(+), 27 deletions(-)
diff --git a/libs/vkd3d-shader/trace.c b/libs/vkd3d-shader/trace.c
index faa009e03a4c..ce8db46b6f21 100644
--- a/libs/vkd3d-shader/trace.c
+++ b/libs/vkd3d-shader/trace.c
@@ -1234,58 +1234,62 @@ static void shader_dump_interpolation_mode(struct vkd3d_string_buffer *buffer,
}
}
-void vkd3d_shader_trace(void *data)
+static void shader_dump_version(struct vkd3d_string_buffer *buffer,
+ const struct vkd3d_shader_version *shader_version)
{
- struct vkd3d_shader_version shader_version;
- struct vkd3d_string_buffer buffer;
- const char *type_prefix;
- const char *p, *q;
- const DWORD *ptr;
- DWORD i;
+ const char *prefix;
- if (!string_buffer_init(&buffer))
- {
- ERR("Failed to initialize string buffer.\n");
- return;
- }
-
- shader_sm4_read_header(data, &ptr, &shader_version);
-
- TRACE("Parsing %p.\n", ptr);
-
- switch (shader_version.type)
+ switch (shader_version->type)
{
case VKD3D_SHADER_TYPE_VERTEX:
- type_prefix = "vs";
+ prefix = "vs";
break;
case VKD3D_SHADER_TYPE_HULL:
- type_prefix = "hs";
+ prefix = "hs";
break;
case VKD3D_SHADER_TYPE_DOMAIN:
- type_prefix = "ds";
+ prefix = "ds";
break;
case VKD3D_SHADER_TYPE_GEOMETRY:
- type_prefix = "gs";
+ prefix = "gs";
break;
case VKD3D_SHADER_TYPE_PIXEL:
- type_prefix = "ps";
+ prefix = "ps";
break;
case VKD3D_SHADER_TYPE_COMPUTE:
- type_prefix = "cs";
+ prefix = "cs";
break;
default:
- FIXME("Unhandled shader type %#x.\n", shader_version.type);
- type_prefix = "unknown";
+ FIXME("Unhandled shader type %#x.\n", shader_version->type);
+ prefix = "unknown";
break;
}
- shader_addline(&buffer, "%s_%u_%u\n", type_prefix, shader_version.major, shader_version.minor);
+ shader_addline(buffer, "%s_%u_%u\n", prefix, shader_version->major, shader_version->minor);
+}
+
+void vkd3d_shader_trace(void *data)
+{
+ struct vkd3d_shader_version shader_version;
+ struct vkd3d_string_buffer buffer;
+ const char *p, *q;
+ const DWORD *ptr;
+ DWORD i;
+
+ if (!string_buffer_init(&buffer))
+ {
+ ERR("Failed to initialize string buffer.\n");
+ return;
+ }
+
+ shader_sm4_read_header(data, &ptr, &shader_version);
+ shader_dump_version(&buffer, &shader_version);
while (!shader_sm4_is_end(data, &ptr))
{
--
2.16.4
More information about the wine-devel
mailing list