Module: vkd3d
Branch: master
Commit: 139d979733df684093bc7927e3d20e8559e704a5
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=139d979733df684093bc792…
Author: Zebediah Figura <z.figura12(a)gmail.com>
Date: Mon Aug 31 20:34:28 2020 -0500
include: Document struct vkd3d_shader_compile_info and members.
Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com>
Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
include/vkd3d_shader.h | 91 +++++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 86 insertions(+), 5 deletions(-)
diff --git a/include/vkd3d_shader.h b/include/vkd3d_shader.h
index da05f2c..9150f14 100644
--- a/include/vkd3d_shader.h
+++ b/include/vkd3d_shader.h
@@ -57,13 +57,17 @@ enum vkd3d_shader_structure_type
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_STRUCTURE_TYPE),
};
-/* This also affects UAV counters in Vulkan environments. In OpenGL
- * environments, atomic counter buffers are always used for UAV counters. */
+/**
+ * Determines how buffer UAVs are stored.
+ *
+ * This also affects UAV counters in Vulkan environments. In OpenGL
+ * environments, atomic counter buffers are always used for UAV counters.
+ */
enum vkd3d_shader_compile_option_buffer_uav
{
- /* Use buffer textures for buffer UAVs, this is the default. */
+ /** Use buffer textures for buffer UAVs. This is the default value. */
VKD3D_SHADER_COMPILE_OPTION_BUFFER_UAV_STORAGE_TEXEL_BUFFER = 0x00000000,
- /* Use storage buffers for buffer UAVs. */
+ /** Use storage buffers for buffer UAVs. */
VKD3D_SHADER_COMPILE_OPTION_BUFFER_UAV_STORAGE_BUFFER = 0x00000001,
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_COMPILE_OPTION_BUFFER_UAV),
@@ -71,15 +75,33 @@ enum vkd3d_shader_compile_option_buffer_uav
enum vkd3d_shader_compile_option_name
{
+ /**
+ * If \a value is nonzero, do not include debug information in the
+ * compiled shader. The default value is zero.
+ *
+ * This option is supported by vkd3d_shader_compile(). However, not all
+ * compilers support generating debug information.
+ */
VKD3D_SHADER_COMPILE_OPTION_STRIP_DEBUG = 0x00000001,
- VKD3D_SHADER_COMPILE_OPTION_BUFFER_UAV = 0x00000002, /* vkd3d_shader_compile_option_buffer_uav */
+ /** \a value is a member of enum vkd3d_shader_compile_option_buffer_uav. */
+ VKD3D_SHADER_COMPILE_OPTION_BUFFER_UAV = 0x00000002,
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_COMPILE_OPTION_NAME),
};
+/**
+ * Various settings which may affect shader compilation or scanning, passed as
+ * part of struct vkd3d_shader_compile_info. For more details, see the
+ * documentation for individual options.
+ */
struct vkd3d_shader_compile_option
{
+ /** Name of the option. */
enum vkd3d_shader_compile_option_name name;
+ /**
+ * A value associated with the option. The type and interpretation of the
+ * value depends on the option in question.
+ */
unsigned int value;
};
@@ -97,9 +119,12 @@ enum vkd3d_shader_visibility
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_VISIBILITY),
};
+/** A generic structure containing a GPU shader, in text or byte-code format. */
struct vkd3d_shader_code
{
+ /** Pointer to the code. */
const void *code;
+ /** Size of \a code, in bytes. */
size_t size;
};
@@ -264,46 +289,102 @@ struct vkd3d_shader_transform_feedback_info
unsigned int buffer_stride_count;
};
+/** The format of a shader to be compiled or scanned. */
enum vkd3d_shader_source_type
{
+ /**
+ * The shader has no type or is to be ignored. This is not a valid value
+ * for vkd3d_shader_compile() or vkd3d_shader_scan().
+ */
VKD3D_SHADER_SOURCE_NONE,
+ /**
+ * A 'Tokenized Program Format' shader embedded in a DXBC container. This is
+ * the format used for Direct3D shader model 4 and 5 shaders.
+ */
VKD3D_SHADER_SOURCE_DXBC_TPF,
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_SOURCE_TYPE),
};
+/** The output format of a compiled shader. */
enum vkd3d_shader_target_type
{
+ /**
+ * The shader has no type or is to be ignored. This is not a valid value
+ * for vkd3d_shader_compile() or vkd3d_shader_scan().
+ */
VKD3D_SHADER_TARGET_NONE,
+ /**
+ * A SPIR-V shader in binary form. This is the format used for Vulkan
+ * shaders.
+ */
VKD3D_SHADER_TARGET_SPIRV_BINARY,
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_TARGET_TYPE),
};
+/**
+ * Describes the maximum severity of compilation messages returned by
+ * vkd3d_shader_compile() and similar functions.
+ */
enum vkd3d_shader_log_level
{
+ /** No messages will be returned. */
VKD3D_SHADER_LOG_NONE,
+ /** Only fatal errors which prevent successful compilation will be returned. */
VKD3D_SHADER_LOG_ERROR,
+ /** Non-fatal warnings and fatal errors will be returned. */
VKD3D_SHADER_LOG_WARNING,
+ /**
+ * All messages, including general informational messages, will be returned.
+ */
VKD3D_SHADER_LOG_INFO,
VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_LOG_LEVEL),
};
+/**
+ * A chained structure containing compilation parameters.
+ */
struct vkd3d_shader_compile_info
{
+ /** Must be set to VKD3D_SHADER_STRUCTURE_TYPE_COMPILE_INFO. */
enum vkd3d_shader_structure_type type;
+ /**
+ * Optional pointer to a structure containing further parameters. For a list
+ * of valid structures, refer to the respective function documentation. If
+ * no further parameters are needed, this field should be set to NULL.
+ */
const void *next;
+ /** Input source code or byte code. */
struct vkd3d_shader_code source;
+ /** Format of the input code passed in \ref source. */
enum vkd3d_shader_source_type source_type;
+ /** Desired output format. */
enum vkd3d_shader_target_type target_type;
+ /**
+ * Pointer to an array of compilation options. This field is ignored if
+ * \ref option_count is zero, but must be valid otherwise.
+ *
+ * If the same option is specified multiple times, only the last value is
+ * used.
+ *
+ * Options not relevant to or not supported by a particular shader compiler
+ * or scanner will be ignored.
+ */
const struct vkd3d_shader_compile_option *options;
+ /** Size, in elements, of \ref options. */
unsigned int option_count;
+ /** Minimum severity of messages returned from the shader function. */
enum vkd3d_shader_log_level log_level;
+ /**
+ * Name of the initial source file, which may be used in error messages or
+ * debug information. This parameter is optional and may be NULL.
+ */
const char *source_name;
};
Module: vkd3d
Branch: master
Commit: 83c67e76ff1b697e80c90559fed1b4e625961b48
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=83c67e76ff1b697e80c9055…
Author: Zebediah Figura <z.figura12(a)gmail.com>
Date: Tue Sep 1 10:32:29 2020 -0500
include: Add basic documentation for vkd3d_types.h.
This is built on Doxygen. I'm not personally attached to Doxygen, but it was
easy enough to set up and write for, and I've found its compiled HTML to be
reasonably legible.
Note that Doxygen does allow for specifying documentation in external files,
if keeping the documentation out of the header is desired.
Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com>
Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
.gitignore | 2 +
Doxyfile.in | 17 ++
Makefile.am | 6 +
configure.ac | 5 +
include/vkd3d_types.h | 18 +-
m4/ax_prog_doxygen.m4 | 586 ++++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 633 insertions(+), 1 deletion(-)
Diff: https://source.winehq.org/git/vkd3d.git/?a=commitdiff;h=83c67e76ff1b697e80c…
Module: wine
Branch: master
Commit: 00a0e2cd8c4df240371ddd22516e4e3544a142ce
URL: https://source.winehq.org/git/wine.git/?a=commit;h=00a0e2cd8c4df240371ddd22…
Author: Carlos Rivera <carlos(a)superkaos.org>
Date: Tue Sep 1 11:17:36 2020 +0200
kernel32/tests: Change file name to avoid collision with other tests.
Entries in IniFileMapping are persisted in Windows until the next
reboot, even if removed from the registry. This made the
function test_registry_mapping to cause other tests
that accessed the actual winetest.ini file to fail if the
profile test was run more than once on Windows without rebooting.
Signed-off-by: Carlos Rivera <carlos(a)superkaos.org>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/kernel32/tests/profile.c | 182 +++++++++++++++++++++---------------------
1 file changed, 91 insertions(+), 91 deletions(-)
Diff: https://source.winehq.org/git/wine.git/?a=commitdiff;h=00a0e2cd8c4df240371d…