From 988cf2154b80ba3ae8adcbd49b5dadb0d82bd5e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B3zef=20Kucia?= Date: Tue, 5 Jun 2018 13:52:56 +0200 Subject: [PATCH] libs/vkd3d-shader: Factor out shader_dump_version(). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Józef Kucia Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- libs/vkd3d-shader/trace.c | 78 ++++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/libs/vkd3d-shader/trace.c b/libs/vkd3d-shader/trace.c index faa009e0..ce8db46b 100644 --- a/libs/vkd3d-shader/trace.c +++ b/libs/vkd3d-shader/trace.c @@ -1234,11 +1234,50 @@ static void shader_dump_interpolation_mode(struct vkd3d_string_buffer *buffer, } } +static void shader_dump_version(struct vkd3d_string_buffer *buffer, + const struct vkd3d_shader_version *shader_version) +{ + const char *prefix; + + switch (shader_version->type) + { + case VKD3D_SHADER_TYPE_VERTEX: + prefix = "vs"; + break; + + case VKD3D_SHADER_TYPE_HULL: + prefix = "hs"; + break; + + case VKD3D_SHADER_TYPE_DOMAIN: + prefix = "ds"; + break; + + case VKD3D_SHADER_TYPE_GEOMETRY: + prefix = "gs"; + break; + + case VKD3D_SHADER_TYPE_PIXEL: + prefix = "ps"; + break; + + case VKD3D_SHADER_TYPE_COMPUTE: + prefix = "cs"; + break; + + default: + FIXME("Unhandled shader type %#x.\n", shader_version->type); + prefix = "unknown"; + break; + } + + 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 *type_prefix; const char *p, *q; const DWORD *ptr; DWORD i; @@ -1250,42 +1289,7 @@ void vkd3d_shader_trace(void *data) } shader_sm4_read_header(data, &ptr, &shader_version); - - TRACE("Parsing %p.\n", ptr); - - switch (shader_version.type) - { - case VKD3D_SHADER_TYPE_VERTEX: - type_prefix = "vs"; - break; - - case VKD3D_SHADER_TYPE_HULL: - type_prefix = "hs"; - break; - - case VKD3D_SHADER_TYPE_DOMAIN: - type_prefix = "ds"; - break; - - case VKD3D_SHADER_TYPE_GEOMETRY: - type_prefix = "gs"; - break; - - case VKD3D_SHADER_TYPE_PIXEL: - type_prefix = "ps"; - break; - - case VKD3D_SHADER_TYPE_COMPUTE: - type_prefix = "cs"; - break; - - default: - FIXME("Unhandled shader type %#x.\n", shader_version.type); - type_prefix = "unknown"; - break; - } - - shader_addline(&buffer, "%s_%u_%u\n", type_prefix, shader_version.major, shader_version.minor); + shader_dump_version(&buffer, &shader_version); while (!shader_sm4_is_end(data, &ptr)) {