From 2ca6aebfaa9c0081b4ecfc6c99b3c8579127effa Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 20 May 2017 00:45:45 +0200 Subject: [PATCH] Rebase against 3f01ab4c39ffa50e26916a5f33d82dec1a2e42dc. --- patches/patchinstall.sh | 2 +- ...-Introduce-a-separate-priority-queue.patch | 138 ++++++++--------- .../wined3d-CSMT_Main/9999-IfDefined.patch | 142 +++++++++--------- 3 files changed, 141 insertions(+), 141 deletions(-) diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 145f4e30..17486995 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "53bf72e266532f2f0533a0dfd7e90a25d7b6d901" + echo "3f01ab4c39ffa50e26916a5f33d82dec1a2e42dc" } # Show version information diff --git a/patches/wined3d-CSMT_Main/0031-wined3d-Introduce-a-separate-priority-queue.patch b/patches/wined3d-CSMT_Main/0031-wined3d-Introduce-a-separate-priority-queue.patch index c0766fbf..a6cbc3e9 100644 --- a/patches/wined3d-CSMT_Main/0031-wined3d-Introduce-a-separate-priority-queue.patch +++ b/patches/wined3d-CSMT_Main/0031-wined3d-Introduce-a-separate-priority-queue.patch @@ -1,4 +1,4 @@ -From cac0b10bce56962963b7f27293ded18d1aeb579e Mon Sep 17 00:00:00 2001 +From 8903436b5d2dfc6a358191002a3d5eacd6a784f6 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Wed, 8 Feb 2017 00:12:31 +0100 Subject: wined3d: Introduce a separate priority queue. @@ -12,10 +12,10 @@ Subject: wined3d: Introduce a separate priority queue. 5 files changed, 89 insertions(+), 65 deletions(-) diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c -index 896cafb87f4..43d1fdcb47f 100644 +index 9d6cf3676b6..10664a5cc50 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c -@@ -426,6 +426,17 @@ static void wined3d_cs_exec_nop(struct wined3d_cs *cs, const void *data) +@@ -427,6 +427,17 @@ static void wined3d_cs_exec_nop(struct wined3d_cs *cs, const void *data) { } @@ -33,7 +33,7 @@ index 896cafb87f4..43d1fdcb47f 100644 static void wined3d_cs_exec_present(struct wined3d_cs *cs, const void *data) { const struct wined3d_cs_present *op = data; -@@ -453,7 +464,7 @@ void wined3d_cs_emit_present(struct wined3d_cs *cs, struct wined3d_swapchain *sw +@@ -454,7 +465,7 @@ void wined3d_cs_emit_present(struct wined3d_cs *cs, struct wined3d_swapchain *sw unsigned int i; LONG pending; @@ -42,7 +42,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_PRESENT; op->dst_window_override = dst_window_override; op->swapchain = swapchain; -@@ -514,7 +525,7 @@ void wined3d_cs_emit_clear(struct wined3d_cs *cs, DWORD rect_count, const RECT * +@@ -515,7 +526,7 @@ void wined3d_cs_emit_clear(struct wined3d_cs *cs, DWORD rect_count, const RECT * struct wined3d_cs_clear *op; unsigned int i; @@ -51,7 +51,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_CLEAR; op->flags = flags; op->rt_count = rt_count; -@@ -550,7 +561,7 @@ void wined3d_cs_emit_clear_rendertarget_view(struct wined3d_cs *cs, struct wined +@@ -551,7 +562,7 @@ void wined3d_cs_emit_clear_rendertarget_view(struct wined3d_cs *cs, struct wined struct wined3d_fb_state fb; } *extra; @@ -60,7 +60,7 @@ index 896cafb87f4..43d1fdcb47f 100644 extra = (void *)&op->rects[1]; extra->fb.render_targets = &extra->rt; op->fb = &extra->fb; -@@ -706,7 +717,7 @@ void wined3d_cs_emit_dispatch(struct wined3d_cs *cs, +@@ -707,7 +718,7 @@ void wined3d_cs_emit_dispatch(struct wined3d_cs *cs, const struct wined3d_state *state = &cs->device->state; struct wined3d_cs_dispatch *op; @@ -69,7 +69,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_DISPATCH; op->group_count_x = group_count_x; op->group_count_y = group_count_y; -@@ -778,7 +789,7 @@ void wined3d_cs_emit_draw(struct wined3d_cs *cs, GLenum primitive_type, int base +@@ -781,7 +792,7 @@ void wined3d_cs_emit_draw(struct wined3d_cs *cs, GLenum primitive_type, unsigned struct wined3d_cs_draw *op; unsigned int i; @@ -77,8 +77,8 @@ index 896cafb87f4..43d1fdcb47f 100644 + op = cs->ops->require_space(cs, sizeof(*op), 0); op->opcode = WINED3D_CS_OP_DRAW; op->primitive_type = primitive_type; - op->base_vertex_idx = base_vertex_idx; -@@ -832,7 +843,7 @@ void wined3d_cs_emit_flush(struct wined3d_cs *cs) + op->patch_vertex_count = patch_vertex_count; +@@ -836,7 +847,7 @@ void wined3d_cs_emit_flush(struct wined3d_cs *cs) { struct wined3d_cs_flush *op; @@ -87,7 +87,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_FLUSH; cs->ops->submit(cs); -@@ -850,7 +861,7 @@ void wined3d_cs_emit_set_predication(struct wined3d_cs *cs, struct wined3d_query +@@ -854,7 +865,7 @@ void wined3d_cs_emit_set_predication(struct wined3d_cs *cs, struct wined3d_query { struct wined3d_cs_set_predication *op; @@ -96,7 +96,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_PREDICATION; op->predicate = predicate; op->value = value; -@@ -870,7 +881,7 @@ void wined3d_cs_emit_set_viewport(struct wined3d_cs *cs, const struct wined3d_vi +@@ -874,7 +885,7 @@ void wined3d_cs_emit_set_viewport(struct wined3d_cs *cs, const struct wined3d_vi { struct wined3d_cs_set_viewport *op; @@ -105,7 +105,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_VIEWPORT; op->viewport = *viewport; -@@ -889,7 +900,7 @@ void wined3d_cs_emit_set_scissor_rect(struct wined3d_cs *cs, const RECT *rect) +@@ -893,7 +904,7 @@ void wined3d_cs_emit_set_scissor_rect(struct wined3d_cs *cs, const RECT *rect) { struct wined3d_cs_set_scissor_rect *op; @@ -114,7 +114,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_SCISSOR_RECT; op->rect = *rect; -@@ -909,7 +920,7 @@ void wined3d_cs_emit_set_rendertarget_view(struct wined3d_cs *cs, unsigned int v +@@ -913,7 +924,7 @@ void wined3d_cs_emit_set_rendertarget_view(struct wined3d_cs *cs, unsigned int v { struct wined3d_cs_set_rendertarget_view *op; @@ -123,7 +123,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_RENDERTARGET_VIEW; op->view_idx = view_idx; op->view = view; -@@ -958,7 +969,7 @@ void wined3d_cs_emit_set_depth_stencil_view(struct wined3d_cs *cs, struct wined3 +@@ -962,7 +973,7 @@ void wined3d_cs_emit_set_depth_stencil_view(struct wined3d_cs *cs, struct wined3 { struct wined3d_cs_set_depth_stencil_view *op; @@ -132,7 +132,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_DEPTH_STENCIL_VIEW; op->view = view; -@@ -977,7 +988,7 @@ void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3 +@@ -981,7 +992,7 @@ void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3 { struct wined3d_cs_set_vertex_declaration *op; @@ -141,7 +141,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_VERTEX_DECLARATION; op->declaration = declaration; -@@ -1009,7 +1020,7 @@ void wined3d_cs_emit_set_stream_source(struct wined3d_cs *cs, UINT stream_idx, +@@ -1013,7 +1024,7 @@ void wined3d_cs_emit_set_stream_source(struct wined3d_cs *cs, UINT stream_idx, { struct wined3d_cs_set_stream_source *op; @@ -150,7 +150,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_STREAM_SOURCE; op->stream_idx = stream_idx; op->buffer = buffer; -@@ -1035,7 +1046,7 @@ void wined3d_cs_emit_set_stream_source_freq(struct wined3d_cs *cs, UINT stream_i +@@ -1039,7 +1050,7 @@ void wined3d_cs_emit_set_stream_source_freq(struct wined3d_cs *cs, UINT stream_i { struct wined3d_cs_set_stream_source_freq *op; @@ -159,7 +159,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_STREAM_SOURCE_FREQ; op->stream_idx = stream_idx; op->frequency = frequency; -@@ -1068,7 +1079,7 @@ void wined3d_cs_emit_set_stream_output(struct wined3d_cs *cs, UINT stream_idx, +@@ -1072,7 +1083,7 @@ void wined3d_cs_emit_set_stream_output(struct wined3d_cs *cs, UINT stream_idx, { struct wined3d_cs_set_stream_output *op; @@ -168,7 +168,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_STREAM_OUTPUT; op->stream_idx = stream_idx; op->buffer = buffer; -@@ -1100,7 +1111,7 @@ void wined3d_cs_emit_set_index_buffer(struct wined3d_cs *cs, struct wined3d_buff +@@ -1104,7 +1115,7 @@ void wined3d_cs_emit_set_index_buffer(struct wined3d_cs *cs, struct wined3d_buff { struct wined3d_cs_set_index_buffer *op; @@ -177,7 +177,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_INDEX_BUFFER; op->buffer = buffer; op->format_id = format_id; -@@ -1130,7 +1141,7 @@ void wined3d_cs_emit_set_constant_buffer(struct wined3d_cs *cs, enum wined3d_sha +@@ -1134,7 +1145,7 @@ void wined3d_cs_emit_set_constant_buffer(struct wined3d_cs *cs, enum wined3d_sha { struct wined3d_cs_set_constant_buffer *op; @@ -186,7 +186,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_CONSTANT_BUFFER; op->type = type; op->cb_idx = cb_idx; -@@ -1222,7 +1233,7 @@ void wined3d_cs_emit_set_texture(struct wined3d_cs *cs, UINT stage, struct wined +@@ -1226,7 +1237,7 @@ void wined3d_cs_emit_set_texture(struct wined3d_cs *cs, UINT stage, struct wined { struct wined3d_cs_set_texture *op; @@ -195,7 +195,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_TEXTURE; op->stage = stage; op->texture = texture; -@@ -1254,7 +1265,7 @@ void wined3d_cs_emit_set_shader_resource_view(struct wined3d_cs *cs, enum wined3 +@@ -1258,7 +1269,7 @@ void wined3d_cs_emit_set_shader_resource_view(struct wined3d_cs *cs, enum wined3 { struct wined3d_cs_set_shader_resource_view *op; @@ -204,7 +204,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_SHADER_RESOURCE_VIEW; op->type = type; op->view_idx = view_idx; -@@ -1284,7 +1295,7 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined +@@ -1288,7 +1299,7 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined { struct wined3d_cs_set_unordered_access_view *op; @@ -213,7 +213,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_UNORDERED_ACCESS_VIEW; op->pipeline = pipeline; op->view_idx = view_idx; -@@ -1309,7 +1320,7 @@ void wined3d_cs_emit_set_sampler(struct wined3d_cs *cs, enum wined3d_shader_type +@@ -1313,7 +1324,7 @@ void wined3d_cs_emit_set_sampler(struct wined3d_cs *cs, enum wined3d_shader_type { struct wined3d_cs_set_sampler *op; @@ -222,7 +222,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_SAMPLER; op->type = type; op->sampler_idx = sampler_idx; -@@ -1334,7 +1345,7 @@ void wined3d_cs_emit_set_shader(struct wined3d_cs *cs, enum wined3d_shader_type +@@ -1338,7 +1349,7 @@ void wined3d_cs_emit_set_shader(struct wined3d_cs *cs, enum wined3d_shader_type { struct wined3d_cs_set_shader *op; @@ -231,7 +231,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_SHADER; op->type = type; op->shader = shader; -@@ -1355,7 +1366,7 @@ void wined3d_cs_emit_set_rasterizer_state(struct wined3d_cs *cs, +@@ -1359,7 +1370,7 @@ void wined3d_cs_emit_set_rasterizer_state(struct wined3d_cs *cs, { struct wined3d_cs_set_rasterizer_state *op; @@ -240,7 +240,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_RASTERIZER_STATE; op->state = rasterizer_state; -@@ -1374,7 +1385,7 @@ void wined3d_cs_emit_set_render_state(struct wined3d_cs *cs, enum wined3d_render +@@ -1378,7 +1389,7 @@ void wined3d_cs_emit_set_render_state(struct wined3d_cs *cs, enum wined3d_render { struct wined3d_cs_set_render_state *op; @@ -249,7 +249,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_RENDER_STATE; op->state = state; op->value = value; -@@ -1395,7 +1406,7 @@ void wined3d_cs_emit_set_texture_state(struct wined3d_cs *cs, UINT stage, +@@ -1399,7 +1410,7 @@ void wined3d_cs_emit_set_texture_state(struct wined3d_cs *cs, UINT stage, { struct wined3d_cs_set_texture_state *op; @@ -258,7 +258,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_TEXTURE_STATE; op->stage = stage; op->state = state; -@@ -1417,7 +1428,7 @@ void wined3d_cs_emit_set_sampler_state(struct wined3d_cs *cs, UINT sampler_idx, +@@ -1421,7 +1432,7 @@ void wined3d_cs_emit_set_sampler_state(struct wined3d_cs *cs, UINT sampler_idx, { struct wined3d_cs_set_sampler_state *op; @@ -267,7 +267,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_SAMPLER_STATE; op->sampler_idx = sampler_idx; op->state = state; -@@ -1440,7 +1451,7 @@ void wined3d_cs_emit_set_transform(struct wined3d_cs *cs, enum wined3d_transform +@@ -1444,7 +1455,7 @@ void wined3d_cs_emit_set_transform(struct wined3d_cs *cs, enum wined3d_transform { struct wined3d_cs_set_transform *op; @@ -276,7 +276,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_TRANSFORM; op->state = state; op->matrix = *matrix; -@@ -1460,7 +1471,7 @@ void wined3d_cs_emit_set_clip_plane(struct wined3d_cs *cs, UINT plane_idx, const +@@ -1464,7 +1475,7 @@ void wined3d_cs_emit_set_clip_plane(struct wined3d_cs *cs, UINT plane_idx, const { struct wined3d_cs_set_clip_plane *op; @@ -285,7 +285,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_CLIP_PLANE; op->plane_idx = plane_idx; op->plane = *plane; -@@ -1536,7 +1547,7 @@ void wined3d_cs_emit_set_color_key(struct wined3d_cs *cs, struct wined3d_texture +@@ -1540,7 +1551,7 @@ void wined3d_cs_emit_set_color_key(struct wined3d_cs *cs, struct wined3d_texture { struct wined3d_cs_set_color_key *op; @@ -294,7 +294,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_COLOR_KEY; op->texture = texture; op->flags = flags; -@@ -1563,7 +1574,7 @@ void wined3d_cs_emit_set_material(struct wined3d_cs *cs, const struct wined3d_ma +@@ -1567,7 +1578,7 @@ void wined3d_cs_emit_set_material(struct wined3d_cs *cs, const struct wined3d_ma { struct wined3d_cs_set_material *op; @@ -303,7 +303,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_MATERIAL; op->material = *material; -@@ -1611,7 +1622,7 @@ void wined3d_cs_emit_set_light(struct wined3d_cs *cs, const struct wined3d_light +@@ -1615,7 +1626,7 @@ void wined3d_cs_emit_set_light(struct wined3d_cs *cs, const struct wined3d_light { struct wined3d_cs_set_light *op; @@ -312,7 +312,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_LIGHT; op->light = *light; -@@ -1644,7 +1655,7 @@ void wined3d_cs_emit_set_light_enable(struct wined3d_cs *cs, unsigned int idx, B +@@ -1648,7 +1659,7 @@ void wined3d_cs_emit_set_light_enable(struct wined3d_cs *cs, unsigned int idx, B { struct wined3d_cs_set_light_enable *op; @@ -321,7 +321,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_SET_LIGHT_ENABLE; op->idx = idx; op->enable = enable; -@@ -1709,7 +1720,7 @@ static void wined3d_cs_mt_push_constants(struct wined3d_cs *cs, enum wined3d_pus +@@ -1713,7 +1724,7 @@ static void wined3d_cs_mt_push_constants(struct wined3d_cs *cs, enum wined3d_pus size_t size; size = count * wined3d_cs_push_constant_info[p].size; @@ -330,7 +330,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_PUSH_CONSTANTS; op->type = p; op->start_idx = start_idx; -@@ -1733,7 +1744,7 @@ void wined3d_cs_emit_reset_state(struct wined3d_cs *cs) +@@ -1737,7 +1748,7 @@ void wined3d_cs_emit_reset_state(struct wined3d_cs *cs) { struct wined3d_cs_reset_state *op; @@ -339,7 +339,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_RESET_STATE; cs->ops->submit(cs); -@@ -1750,7 +1761,7 @@ static void wined3d_cs_emit_callback(struct wined3d_cs *cs, void (*callback)(voi +@@ -1754,7 +1765,7 @@ static void wined3d_cs_emit_callback(struct wined3d_cs *cs, void (*callback)(voi { struct wined3d_cs_callback *op; @@ -348,7 +348,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_CALLBACK; op->callback = callback; op->object = object; -@@ -1811,7 +1822,7 @@ void wined3d_cs_emit_query_issue(struct wined3d_cs *cs, struct wined3d_query *qu +@@ -1815,7 +1826,7 @@ void wined3d_cs_emit_query_issue(struct wined3d_cs *cs, struct wined3d_query *qu { struct wined3d_cs_query_issue *op; @@ -357,7 +357,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_QUERY_ISSUE; op->query = query; op->flags = flags; -@@ -1832,7 +1843,7 @@ void wined3d_cs_emit_preload_resource(struct wined3d_cs *cs, struct wined3d_reso +@@ -1836,7 +1847,7 @@ void wined3d_cs_emit_preload_resource(struct wined3d_cs *cs, struct wined3d_reso { struct wined3d_cs_preload_resource *op; @@ -366,7 +366,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_PRELOAD_RESOURCE; op->resource = resource; -@@ -1854,7 +1865,7 @@ void wined3d_cs_emit_unload_resource(struct wined3d_cs *cs, struct wined3d_resou +@@ -1858,7 +1869,7 @@ void wined3d_cs_emit_unload_resource(struct wined3d_cs *cs, struct wined3d_resou { struct wined3d_cs_unload_resource *op; @@ -375,7 +375,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_UNLOAD_RESOURCE; op->resource = resource; -@@ -1882,7 +1893,7 @@ HRESULT wined3d_cs_map(struct wined3d_cs *cs, struct wined3d_resource *resource, +@@ -1886,7 +1897,7 @@ HRESULT wined3d_cs_map(struct wined3d_cs *cs, struct wined3d_resource *resource, * increasing the map count would be visible to applications. */ wined3d_not_from_cs(cs); @@ -384,7 +384,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_MAP; op->resource = resource; op->sub_resource_idx = sub_resource_idx; -@@ -1912,7 +1923,7 @@ HRESULT wined3d_cs_unmap(struct wined3d_cs *cs, struct wined3d_resource *resourc +@@ -1916,7 +1927,7 @@ HRESULT wined3d_cs_unmap(struct wined3d_cs *cs, struct wined3d_resource *resourc wined3d_not_from_cs(cs); @@ -393,7 +393,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_UNMAP; op->resource = resource; op->sub_resource_idx = sub_resource_idx; -@@ -2052,7 +2063,7 @@ void wined3d_cs_emit_blt_sub_resource(struct wined3d_cs *cs, struct wined3d_reso +@@ -2056,7 +2067,7 @@ void wined3d_cs_emit_blt_sub_resource(struct wined3d_cs *cs, struct wined3d_reso { struct wined3d_cs_blt_sub_resource *op; @@ -402,7 +402,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_BLT_SUB_RESOURCE; op->dst_resource = dst_resource; op->dst_sub_resource_idx = dst_sub_resource_idx; -@@ -2132,7 +2143,7 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r +@@ -2136,7 +2147,7 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r { struct wined3d_cs_update_sub_resource *op; @@ -411,7 +411,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_UPDATE_SUB_RESOURCE; op->resource = resource; op->sub_resource_idx = sub_resource_idx; -@@ -2175,7 +2186,7 @@ void wined3d_cs_emit_add_dirty_texture_region(struct wined3d_cs *cs, +@@ -2179,7 +2190,7 @@ void wined3d_cs_emit_add_dirty_texture_region(struct wined3d_cs *cs, { struct wined3d_cs_add_dirty_texture_region *op; @@ -420,7 +420,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_ADD_DIRTY_TEXTURE_REGION; op->texture = texture; op->layer = layer; -@@ -2203,7 +2214,7 @@ void wined3d_cs_emit_clear_unordered_access_view_uint(struct wined3d_cs *cs, +@@ -2207,7 +2218,7 @@ void wined3d_cs_emit_clear_unordered_access_view_uint(struct wined3d_cs *cs, { struct wined3d_cs_clear_unordered_access_view *op; @@ -429,7 +429,7 @@ index 896cafb87f4..43d1fdcb47f 100644 op->opcode = WINED3D_CS_OP_CLEAR_UNORDERED_ACCESS_VIEW; op->view = view; op->clear_value = *clear_value; -@@ -2217,11 +2228,10 @@ static void wined3d_cs_emit_stop(struct wined3d_cs *cs) +@@ -2221,11 +2232,10 @@ static void wined3d_cs_emit_stop(struct wined3d_cs *cs) { struct wined3d_cs_stop *op; @@ -442,7 +442,7 @@ index 896cafb87f4..43d1fdcb47f 100644 } static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void *data) = -@@ -2272,7 +2282,7 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void +@@ -2276,7 +2286,7 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void /* WINED3D_CS_OP_CLEAR_UNORDERED_ACCESS_VIEW */ wined3d_cs_exec_clear_unordered_access_view, }; @@ -451,7 +451,7 @@ index 896cafb87f4..43d1fdcb47f 100644 { if (size > (cs->data_size - cs->end)) { -@@ -2338,7 +2348,7 @@ static BOOL wined3d_cs_queue_is_empty(const struct wined3d_cs_queue *queue) +@@ -2342,7 +2352,7 @@ static BOOL wined3d_cs_queue_is_empty(const struct wined3d_cs_queue *queue) static void wined3d_cs_mt_submit(struct wined3d_cs *cs) { @@ -460,7 +460,7 @@ index 896cafb87f4..43d1fdcb47f 100644 struct wined3d_cs_packet *packet; size_t packet_size; -@@ -2353,15 +2363,15 @@ static void wined3d_cs_mt_submit(struct wined3d_cs *cs) +@@ -2357,15 +2367,15 @@ static void wined3d_cs_mt_submit(struct wined3d_cs *cs) SetEvent(cs->event); } @@ -479,7 +479,7 @@ index 896cafb87f4..43d1fdcb47f 100644 header_size = FIELD_OFFSET(struct wined3d_cs_packet, data[0]); size = (size + header_size - 1) & ~(header_size - 1); -@@ -2382,7 +2392,7 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) +@@ -2386,7 +2396,7 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) TRACE("Inserting a nop for %lu + %lu bytes.\n", (unsigned long)header_size, (unsigned long)nop_size); @@ -488,7 +488,7 @@ index 896cafb87f4..43d1fdcb47f 100644 if (nop_size) nop->opcode = WINED3D_CS_OP_NOP; -@@ -2413,6 +2423,7 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) +@@ -2417,6 +2427,7 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) head, tail, (unsigned long)packet_size); } @@ -496,7 +496,7 @@ index 896cafb87f4..43d1fdcb47f 100644 packet = (struct wined3d_cs_packet *)&queue->data[queue->head]; packet->size = size; return packet->data; -@@ -2420,11 +2431,15 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) +@@ -2424,11 +2435,15 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) static void wined3d_cs_mt_finish(struct wined3d_cs *cs) { @@ -513,7 +513,7 @@ index 896cafb87f4..43d1fdcb47f 100644 } static const struct wined3d_cs_ops wined3d_cs_mt_ops = -@@ -2450,6 +2465,13 @@ static void poll_queries(struct wined3d_cs *cs) +@@ -2454,6 +2469,13 @@ static void poll_queries(struct wined3d_cs *cs) } } @@ -527,7 +527,7 @@ index 896cafb87f4..43d1fdcb47f 100644 static void wined3d_cs_wait_event(struct wined3d_cs *cs) { InterlockedExchange(&cs->waiting_for_event, TRUE); -@@ -2461,7 +2483,7 @@ static void wined3d_cs_wait_event(struct wined3d_cs *cs) +@@ -2465,7 +2487,7 @@ static void wined3d_cs_wait_event(struct wined3d_cs *cs) * Likewise, we can race with the main thread when resetting * "waiting_for_event", in which case we would need to call * WaitForSingleObject() because the main thread called SetEvent(). */ @@ -536,7 +536,7 @@ index 896cafb87f4..43d1fdcb47f 100644 && InterlockedCompareExchange(&cs->waiting_for_event, FALSE, TRUE)) return; -@@ -2480,7 +2502,6 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) +@@ -2484,7 +2506,6 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) TRACE("Started.\n"); @@ -544,7 +544,7 @@ index 896cafb87f4..43d1fdcb47f 100644 list_init(&cs->query_poll_list); cs->thread_id = GetCurrentThreadId(); for (;;) -@@ -2491,7 +2512,7 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) +@@ -2495,7 +2516,7 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) poll = 0; } @@ -553,7 +553,7 @@ index 896cafb87f4..43d1fdcb47f 100644 { if (++spin_count >= WINED3D_CS_SPIN_COUNT && list_empty(&cs->query_poll_list)) wined3d_cs_wait_event(cs); -@@ -2520,7 +2541,6 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) +@@ -2524,7 +2545,6 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) InterlockedExchange(&queue->tail, tail); } @@ -561,7 +561,7 @@ index 896cafb87f4..43d1fdcb47f 100644 TRACE("Stopped.\n"); FreeLibraryAndExitThread(cs->wined3d_module, 0); } -@@ -2594,6 +2614,7 @@ void wined3d_cs_destroy(struct wined3d_cs *cs) +@@ -2598,6 +2618,7 @@ void wined3d_cs_destroy(struct wined3d_cs *cs) if (cs->thread) { wined3d_cs_emit_stop(cs); @@ -570,10 +570,10 @@ index 896cafb87f4..43d1fdcb47f 100644 if (!CloseHandle(cs->event)) ERR("Closing event failed.\n"); diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c -index fa3fbc7120b..07d5970e4b3 100644 +index eaa6c6b58ea..aee47263144 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c -@@ -1207,7 +1207,7 @@ HRESULT CDECL wined3d_device_uninit_3d(struct wined3d_device *device) +@@ -1213,7 +1213,7 @@ HRESULT CDECL wined3d_device_uninit_3d(struct wined3d_device *device) if (!device->d3d_initialized) return WINED3DERR_INVALIDCALL; @@ -582,7 +582,7 @@ index fa3fbc7120b..07d5970e4b3 100644 if (device->logo_texture) wined3d_texture_decref(device->logo_texture); -@@ -4234,7 +4234,7 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev +@@ -4245,7 +4245,7 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev src_texture->sub_resources[src_sub_resource_idx].map_count) { struct wined3d_device *device = dst_texture->resource.device; @@ -591,7 +591,7 @@ index fa3fbc7120b..07d5970e4b3 100644 if (dst_texture->sub_resources[dst_sub_resource_idx].map_count || src_texture->sub_resources[src_sub_resource_idx].map_count) { -@@ -4730,7 +4730,7 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device, +@@ -4741,7 +4741,7 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device, TRACE("device %p, swapchain_desc %p, mode %p, callback %p, reset_state %#x.\n", device, swapchain_desc, mode, callback, reset_state); @@ -636,10 +636,10 @@ index 01a29e605ac..3bd438f64d6 100644 || (src_texture && src_texture->sub_resources[src_sub_resource_idx].map_count)) { diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h -index 451a924c99e..b647f4e23b4 100644 +index e1d18ee9b83..550c0d367a7 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h -@@ -3267,7 +3267,7 @@ struct wined3d_cs_queue +@@ -3285,7 +3285,7 @@ struct wined3d_cs_queue struct wined3d_cs_ops { @@ -648,7 +648,7 @@ index 451a924c99e..b647f4e23b4 100644 void (*submit)(struct wined3d_cs *cs); void (*finish)(struct wined3d_cs *cs); void (*push_constants)(struct wined3d_cs *cs, enum wined3d_push_constants p, -@@ -3284,7 +3284,9 @@ struct wined3d_cs +@@ -3302,7 +3302,9 @@ struct wined3d_cs HANDLE thread; DWORD thread_id; @@ -659,7 +659,7 @@ index 451a924c99e..b647f4e23b4 100644 size_t data_size, start, end; void *data; struct list query_poll_list; -@@ -3367,6 +3369,7 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined +@@ -3385,6 +3387,7 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3d_vertex_declaration *declaration) DECLSPEC_HIDDEN; void wined3d_cs_emit_set_viewport(struct wined3d_cs *cs, const struct wined3d_viewport *viewport) DECLSPEC_HIDDEN; diff --git a/patches/wined3d-CSMT_Main/9999-IfDefined.patch b/patches/wined3d-CSMT_Main/9999-IfDefined.patch index d5972abf..2092ff06 100644 --- a/patches/wined3d-CSMT_Main/9999-IfDefined.patch +++ b/patches/wined3d-CSMT_Main/9999-IfDefined.patch @@ -37,7 +37,7 @@ diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c -@@ -401,6 +401,9 @@ struct wined3d_cs_update_sub_resource +@@ -402,6 +402,9 @@ struct wined3d_cs_update_sub_resource unsigned int sub_resource_idx; struct wined3d_box box; struct wined3d_sub_resource_data data; @@ -47,7 +47,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c }; struct wined3d_cs_add_dirty_texture_region -@@ -426,6 +429,19 @@ static void wined3d_cs_exec_nop(struct wined3d_cs *cs, const void *data) +@@ -427,6 +430,19 @@ static void wined3d_cs_exec_nop(struct wined3d_cs *cs, const void *data) { } @@ -67,7 +67,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c static void wined3d_cs_exec_present(struct wined3d_cs *cs, const void *data) { const struct wined3d_cs_present *op = data; -@@ -453,7 +469,11 @@ void wined3d_cs_emit_present(struct wined3d_cs *cs, struct wined3d_swapchain *sw +@@ -454,7 +470,11 @@ void wined3d_cs_emit_present(struct wined3d_cs *cs, struct wined3d_swapchain *sw unsigned int i; LONG pending; @@ -79,7 +79,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_PRESENT; op->dst_window_override = dst_window_override; op->swapchain = swapchain; -@@ -514,7 +534,11 @@ void wined3d_cs_emit_clear(struct wined3d_cs *cs, DWORD rect_count, const RECT * +@@ -515,7 +535,11 @@ void wined3d_cs_emit_clear(struct wined3d_cs *cs, DWORD rect_count, const RECT * struct wined3d_cs_clear *op; unsigned int i; @@ -91,7 +91,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_CLEAR; op->flags = flags; op->rt_count = rt_count; -@@ -550,7 +574,11 @@ void wined3d_cs_emit_clear_rendertarget_view(struct wined3d_cs *cs, struct wined +@@ -551,7 +575,11 @@ void wined3d_cs_emit_clear_rendertarget_view(struct wined3d_cs *cs, struct wined struct wined3d_fb_state fb; } *extra; @@ -103,7 +103,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c extra = (void *)&op->rects[1]; extra->fb.render_targets = &extra->rt; op->fb = &extra->fb; -@@ -706,7 +734,11 @@ void wined3d_cs_emit_dispatch(struct wined3d_cs *cs, +@@ -707,7 +735,11 @@ void wined3d_cs_emit_dispatch(struct wined3d_cs *cs, const struct wined3d_state *state = &cs->device->state; struct wined3d_cs_dispatch *op; @@ -115,7 +115,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_DISPATCH; op->group_count_x = group_count_x; op->group_count_y = group_count_y; -@@ -778,7 +810,11 @@ void wined3d_cs_emit_draw(struct wined3d_cs *cs, GLenum primitive_type, int base +@@ -781,7 +813,11 @@ void wined3d_cs_emit_draw(struct wined3d_cs *cs, GLenum primitive_type, unsigned struct wined3d_cs_draw *op; unsigned int i; @@ -126,8 +126,8 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c +#endif /* STAGING_CSMT */ op->opcode = WINED3D_CS_OP_DRAW; op->primitive_type = primitive_type; - op->base_vertex_idx = base_vertex_idx; -@@ -832,7 +868,11 @@ void wined3d_cs_emit_flush(struct wined3d_cs *cs) + op->patch_vertex_count = patch_vertex_count; +@@ -836,7 +872,11 @@ void wined3d_cs_emit_flush(struct wined3d_cs *cs) { struct wined3d_cs_flush *op; @@ -139,7 +139,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_FLUSH; cs->ops->submit(cs); -@@ -850,7 +890,11 @@ void wined3d_cs_emit_set_predication(struct wined3d_cs *cs, struct wined3d_query +@@ -854,7 +894,11 @@ void wined3d_cs_emit_set_predication(struct wined3d_cs *cs, struct wined3d_query { struct wined3d_cs_set_predication *op; @@ -151,7 +151,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_PREDICATION; op->predicate = predicate; op->value = value; -@@ -870,7 +914,11 @@ void wined3d_cs_emit_set_viewport(struct wined3d_cs *cs, const struct wined3d_vi +@@ -874,7 +918,11 @@ void wined3d_cs_emit_set_viewport(struct wined3d_cs *cs, const struct wined3d_vi { struct wined3d_cs_set_viewport *op; @@ -163,7 +163,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_VIEWPORT; op->viewport = *viewport; -@@ -889,7 +937,11 @@ void wined3d_cs_emit_set_scissor_rect(struct wined3d_cs *cs, const RECT *rect) +@@ -893,7 +941,11 @@ void wined3d_cs_emit_set_scissor_rect(struct wined3d_cs *cs, const RECT *rect) { struct wined3d_cs_set_scissor_rect *op; @@ -175,7 +175,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_SCISSOR_RECT; op->rect = *rect; -@@ -909,7 +961,11 @@ void wined3d_cs_emit_set_rendertarget_view(struct wined3d_cs *cs, unsigned int v +@@ -913,7 +965,11 @@ void wined3d_cs_emit_set_rendertarget_view(struct wined3d_cs *cs, unsigned int v { struct wined3d_cs_set_rendertarget_view *op; @@ -187,7 +187,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_RENDERTARGET_VIEW; op->view_idx = view_idx; op->view = view; -@@ -958,7 +1014,11 @@ void wined3d_cs_emit_set_depth_stencil_view(struct wined3d_cs *cs, struct wined3 +@@ -962,7 +1018,11 @@ void wined3d_cs_emit_set_depth_stencil_view(struct wined3d_cs *cs, struct wined3 { struct wined3d_cs_set_depth_stencil_view *op; @@ -199,7 +199,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_DEPTH_STENCIL_VIEW; op->view = view; -@@ -977,7 +1037,11 @@ void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3 +@@ -981,7 +1041,11 @@ void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3 { struct wined3d_cs_set_vertex_declaration *op; @@ -211,7 +211,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_VERTEX_DECLARATION; op->declaration = declaration; -@@ -1009,7 +1073,11 @@ void wined3d_cs_emit_set_stream_source(struct wined3d_cs *cs, UINT stream_idx, +@@ -1013,7 +1077,11 @@ void wined3d_cs_emit_set_stream_source(struct wined3d_cs *cs, UINT stream_idx, { struct wined3d_cs_set_stream_source *op; @@ -223,7 +223,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_STREAM_SOURCE; op->stream_idx = stream_idx; op->buffer = buffer; -@@ -1035,7 +1103,11 @@ void wined3d_cs_emit_set_stream_source_freq(struct wined3d_cs *cs, UINT stream_i +@@ -1039,7 +1107,11 @@ void wined3d_cs_emit_set_stream_source_freq(struct wined3d_cs *cs, UINT stream_i { struct wined3d_cs_set_stream_source_freq *op; @@ -235,7 +235,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_STREAM_SOURCE_FREQ; op->stream_idx = stream_idx; op->frequency = frequency; -@@ -1068,7 +1140,11 @@ void wined3d_cs_emit_set_stream_output(struct wined3d_cs *cs, UINT stream_idx, +@@ -1072,7 +1144,11 @@ void wined3d_cs_emit_set_stream_output(struct wined3d_cs *cs, UINT stream_idx, { struct wined3d_cs_set_stream_output *op; @@ -247,7 +247,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_STREAM_OUTPUT; op->stream_idx = stream_idx; op->buffer = buffer; -@@ -1100,7 +1176,11 @@ void wined3d_cs_emit_set_index_buffer(struct wined3d_cs *cs, struct wined3d_buff +@@ -1104,7 +1180,11 @@ void wined3d_cs_emit_set_index_buffer(struct wined3d_cs *cs, struct wined3d_buff { struct wined3d_cs_set_index_buffer *op; @@ -259,7 +259,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_INDEX_BUFFER; op->buffer = buffer; op->format_id = format_id; -@@ -1130,7 +1210,11 @@ void wined3d_cs_emit_set_constant_buffer(struct wined3d_cs *cs, enum wined3d_sha +@@ -1134,7 +1214,11 @@ void wined3d_cs_emit_set_constant_buffer(struct wined3d_cs *cs, enum wined3d_sha { struct wined3d_cs_set_constant_buffer *op; @@ -271,7 +271,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_CONSTANT_BUFFER; op->type = type; op->cb_idx = cb_idx; -@@ -1222,7 +1306,11 @@ void wined3d_cs_emit_set_texture(struct wined3d_cs *cs, UINT stage, struct wined +@@ -1226,7 +1310,11 @@ void wined3d_cs_emit_set_texture(struct wined3d_cs *cs, UINT stage, struct wined { struct wined3d_cs_set_texture *op; @@ -283,7 +283,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_TEXTURE; op->stage = stage; op->texture = texture; -@@ -1254,7 +1342,11 @@ void wined3d_cs_emit_set_shader_resource_view(struct wined3d_cs *cs, enum wined3 +@@ -1258,7 +1346,11 @@ void wined3d_cs_emit_set_shader_resource_view(struct wined3d_cs *cs, enum wined3 { struct wined3d_cs_set_shader_resource_view *op; @@ -295,7 +295,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_SHADER_RESOURCE_VIEW; op->type = type; op->view_idx = view_idx; -@@ -1284,7 +1376,11 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined +@@ -1288,7 +1380,11 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined { struct wined3d_cs_set_unordered_access_view *op; @@ -307,7 +307,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_UNORDERED_ACCESS_VIEW; op->pipeline = pipeline; op->view_idx = view_idx; -@@ -1309,7 +1405,11 @@ void wined3d_cs_emit_set_sampler(struct wined3d_cs *cs, enum wined3d_shader_type +@@ -1313,7 +1409,11 @@ void wined3d_cs_emit_set_sampler(struct wined3d_cs *cs, enum wined3d_shader_type { struct wined3d_cs_set_sampler *op; @@ -319,7 +319,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_SAMPLER; op->type = type; op->sampler_idx = sampler_idx; -@@ -1334,7 +1434,11 @@ void wined3d_cs_emit_set_shader(struct wined3d_cs *cs, enum wined3d_shader_type +@@ -1338,7 +1438,11 @@ void wined3d_cs_emit_set_shader(struct wined3d_cs *cs, enum wined3d_shader_type { struct wined3d_cs_set_shader *op; @@ -331,7 +331,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_SHADER; op->type = type; op->shader = shader; -@@ -1355,7 +1459,11 @@ void wined3d_cs_emit_set_rasterizer_state(struct wined3d_cs *cs, +@@ -1359,7 +1463,11 @@ void wined3d_cs_emit_set_rasterizer_state(struct wined3d_cs *cs, { struct wined3d_cs_set_rasterizer_state *op; @@ -343,7 +343,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_RASTERIZER_STATE; op->state = rasterizer_state; -@@ -1374,7 +1482,11 @@ void wined3d_cs_emit_set_render_state(struct wined3d_cs *cs, enum wined3d_render +@@ -1378,7 +1486,11 @@ void wined3d_cs_emit_set_render_state(struct wined3d_cs *cs, enum wined3d_render { struct wined3d_cs_set_render_state *op; @@ -355,7 +355,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_RENDER_STATE; op->state = state; op->value = value; -@@ -1395,7 +1507,11 @@ void wined3d_cs_emit_set_texture_state(struct wined3d_cs *cs, UINT stage, +@@ -1399,7 +1511,11 @@ void wined3d_cs_emit_set_texture_state(struct wined3d_cs *cs, UINT stage, { struct wined3d_cs_set_texture_state *op; @@ -367,7 +367,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_TEXTURE_STATE; op->stage = stage; op->state = state; -@@ -1417,7 +1533,11 @@ void wined3d_cs_emit_set_sampler_state(struct wined3d_cs *cs, UINT sampler_idx, +@@ -1421,7 +1537,11 @@ void wined3d_cs_emit_set_sampler_state(struct wined3d_cs *cs, UINT sampler_idx, { struct wined3d_cs_set_sampler_state *op; @@ -379,7 +379,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_SAMPLER_STATE; op->sampler_idx = sampler_idx; op->state = state; -@@ -1440,7 +1560,11 @@ void wined3d_cs_emit_set_transform(struct wined3d_cs *cs, enum wined3d_transform +@@ -1444,7 +1564,11 @@ void wined3d_cs_emit_set_transform(struct wined3d_cs *cs, enum wined3d_transform { struct wined3d_cs_set_transform *op; @@ -391,7 +391,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_TRANSFORM; op->state = state; op->matrix = *matrix; -@@ -1460,7 +1584,11 @@ void wined3d_cs_emit_set_clip_plane(struct wined3d_cs *cs, UINT plane_idx, const +@@ -1464,7 +1588,11 @@ void wined3d_cs_emit_set_clip_plane(struct wined3d_cs *cs, UINT plane_idx, const { struct wined3d_cs_set_clip_plane *op; @@ -403,7 +403,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_CLIP_PLANE; op->plane_idx = plane_idx; op->plane = *plane; -@@ -1536,7 +1664,11 @@ void wined3d_cs_emit_set_color_key(struct wined3d_cs *cs, struct wined3d_texture +@@ -1540,7 +1668,11 @@ void wined3d_cs_emit_set_color_key(struct wined3d_cs *cs, struct wined3d_texture { struct wined3d_cs_set_color_key *op; @@ -415,7 +415,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_COLOR_KEY; op->texture = texture; op->flags = flags; -@@ -1563,7 +1695,11 @@ void wined3d_cs_emit_set_material(struct wined3d_cs *cs, const struct wined3d_ma +@@ -1567,7 +1699,11 @@ void wined3d_cs_emit_set_material(struct wined3d_cs *cs, const struct wined3d_ma { struct wined3d_cs_set_material *op; @@ -427,7 +427,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_MATERIAL; op->material = *material; -@@ -1611,7 +1747,11 @@ void wined3d_cs_emit_set_light(struct wined3d_cs *cs, const struct wined3d_light +@@ -1615,7 +1751,11 @@ void wined3d_cs_emit_set_light(struct wined3d_cs *cs, const struct wined3d_light { struct wined3d_cs_set_light *op; @@ -439,7 +439,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_LIGHT; op->light = *light; -@@ -1644,7 +1784,11 @@ void wined3d_cs_emit_set_light_enable(struct wined3d_cs *cs, unsigned int idx, B +@@ -1648,7 +1788,11 @@ void wined3d_cs_emit_set_light_enable(struct wined3d_cs *cs, unsigned int idx, B { struct wined3d_cs_set_light_enable *op; @@ -451,7 +451,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_SET_LIGHT_ENABLE; op->idx = idx; op->enable = enable; -@@ -1709,7 +1853,11 @@ static void wined3d_cs_mt_push_constants(struct wined3d_cs *cs, enum wined3d_pus +@@ -1713,7 +1857,11 @@ static void wined3d_cs_mt_push_constants(struct wined3d_cs *cs, enum wined3d_pus size_t size; size = count * wined3d_cs_push_constant_info[p].size; @@ -463,7 +463,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_PUSH_CONSTANTS; op->type = p; op->start_idx = start_idx; -@@ -1733,7 +1881,11 @@ void wined3d_cs_emit_reset_state(struct wined3d_cs *cs) +@@ -1737,7 +1885,11 @@ void wined3d_cs_emit_reset_state(struct wined3d_cs *cs) { struct wined3d_cs_reset_state *op; @@ -475,7 +475,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_RESET_STATE; cs->ops->submit(cs); -@@ -1750,7 +1902,11 @@ static void wined3d_cs_emit_callback(struct wined3d_cs *cs, void (*callback)(voi +@@ -1754,7 +1906,11 @@ static void wined3d_cs_emit_callback(struct wined3d_cs *cs, void (*callback)(voi { struct wined3d_cs_callback *op; @@ -487,7 +487,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_CALLBACK; op->callback = callback; op->object = object; -@@ -1811,7 +1967,11 @@ void wined3d_cs_emit_query_issue(struct wined3d_cs *cs, struct wined3d_query *qu +@@ -1815,7 +1971,11 @@ void wined3d_cs_emit_query_issue(struct wined3d_cs *cs, struct wined3d_query *qu { struct wined3d_cs_query_issue *op; @@ -499,7 +499,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_QUERY_ISSUE; op->query = query; op->flags = flags; -@@ -1832,7 +1992,11 @@ void wined3d_cs_emit_preload_resource(struct wined3d_cs *cs, struct wined3d_reso +@@ -1836,7 +1996,11 @@ void wined3d_cs_emit_preload_resource(struct wined3d_cs *cs, struct wined3d_reso { struct wined3d_cs_preload_resource *op; @@ -511,7 +511,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_PRELOAD_RESOURCE; op->resource = resource; -@@ -1854,7 +2018,11 @@ void wined3d_cs_emit_unload_resource(struct wined3d_cs *cs, struct wined3d_resou +@@ -1858,7 +2022,11 @@ void wined3d_cs_emit_unload_resource(struct wined3d_cs *cs, struct wined3d_resou { struct wined3d_cs_unload_resource *op; @@ -523,7 +523,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_UNLOAD_RESOURCE; op->resource = resource; -@@ -1882,7 +2050,11 @@ HRESULT wined3d_cs_map(struct wined3d_cs *cs, struct wined3d_resource *resource, +@@ -1886,7 +2054,11 @@ HRESULT wined3d_cs_map(struct wined3d_cs *cs, struct wined3d_resource *resource, * increasing the map count would be visible to applications. */ wined3d_not_from_cs(cs); @@ -535,7 +535,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_MAP; op->resource = resource; op->sub_resource_idx = sub_resource_idx; -@@ -1912,7 +2084,11 @@ HRESULT wined3d_cs_unmap(struct wined3d_cs *cs, struct wined3d_resource *resourc +@@ -1916,7 +2088,11 @@ HRESULT wined3d_cs_unmap(struct wined3d_cs *cs, struct wined3d_resource *resourc wined3d_not_from_cs(cs); @@ -547,7 +547,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_UNMAP; op->resource = resource; op->sub_resource_idx = sub_resource_idx; -@@ -2052,7 +2228,11 @@ void wined3d_cs_emit_blt_sub_resource(struct wined3d_cs *cs, struct wined3d_reso +@@ -2056,7 +2232,11 @@ void wined3d_cs_emit_blt_sub_resource(struct wined3d_cs *cs, struct wined3d_reso { struct wined3d_cs_blt_sub_resource *op; @@ -559,7 +559,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_BLT_SUB_RESOURCE; op->dst_resource = dst_resource; op->dst_sub_resource_idx = dst_sub_resource_idx; -@@ -2131,8 +2311,56 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r +@@ -2135,8 +2315,56 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r unsigned int slice_pitch) { struct wined3d_cs_update_sub_resource *op; @@ -616,7 +616,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_UPDATE_SUB_RESOURCE; op->resource = resource; op->sub_resource_idx = sub_resource_idx; -@@ -2175,7 +2403,11 @@ void wined3d_cs_emit_add_dirty_texture_region(struct wined3d_cs *cs, +@@ -2179,7 +2407,11 @@ void wined3d_cs_emit_add_dirty_texture_region(struct wined3d_cs *cs, { struct wined3d_cs_add_dirty_texture_region *op; @@ -628,7 +628,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_ADD_DIRTY_TEXTURE_REGION; op->texture = texture; op->layer = layer; -@@ -2203,7 +2435,11 @@ void wined3d_cs_emit_clear_unordered_access_view_uint(struct wined3d_cs *cs, +@@ -2207,7 +2439,11 @@ void wined3d_cs_emit_clear_unordered_access_view_uint(struct wined3d_cs *cs, { struct wined3d_cs_clear_unordered_access_view *op; @@ -640,7 +640,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c op->opcode = WINED3D_CS_OP_CLEAR_UNORDERED_ACCESS_VIEW; op->view = view; op->clear_value = *clear_value; -@@ -2217,11 +2453,17 @@ static void wined3d_cs_emit_stop(struct wined3d_cs *cs) +@@ -2221,11 +2457,17 @@ static void wined3d_cs_emit_stop(struct wined3d_cs *cs) { struct wined3d_cs_stop *op; @@ -658,7 +658,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c } static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void *data) = -@@ -2272,7 +2514,16 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void +@@ -2276,7 +2518,16 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void /* WINED3D_CS_OP_CLEAR_UNORDERED_ACCESS_VIEW */ wined3d_cs_exec_clear_unordered_access_view, }; @@ -675,7 +675,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c { if (size > (cs->data_size - cs->end)) { -@@ -2325,6 +2576,9 @@ static void wined3d_cs_st_finish(struct wined3d_cs *cs) +@@ -2329,6 +2580,9 @@ static void wined3d_cs_st_finish(struct wined3d_cs *cs) static const struct wined3d_cs_ops wined3d_cs_st_ops = { @@ -685,7 +685,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c wined3d_cs_st_require_space, wined3d_cs_st_submit, wined3d_cs_st_finish, -@@ -2338,7 +2592,11 @@ static BOOL wined3d_cs_queue_is_empty(const struct wined3d_cs_queue *queue) +@@ -2342,7 +2596,11 @@ static BOOL wined3d_cs_queue_is_empty(const struct wined3d_cs_queue *queue) static void wined3d_cs_mt_submit(struct wined3d_cs *cs) { @@ -697,7 +697,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c struct wined3d_cs_packet *packet; size_t packet_size; -@@ -2353,15 +2611,42 @@ static void wined3d_cs_mt_submit(struct wined3d_cs *cs) +@@ -2357,15 +2615,42 @@ static void wined3d_cs_mt_submit(struct wined3d_cs *cs) SetEvent(cs->event); } @@ -740,7 +740,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c header_size = FIELD_OFFSET(struct wined3d_cs_packet, data[0]); size = (size + header_size - 1) & ~(header_size - 1); -@@ -2382,7 +2667,11 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) +@@ -2386,7 +2671,11 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) TRACE("Inserting a nop for %lu + %lu bytes.\n", (unsigned long)header_size, (unsigned long)nop_size); @@ -752,7 +752,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c if (nop_size) nop->opcode = WINED3D_CS_OP_NOP; -@@ -2413,6 +2702,9 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) +@@ -2417,6 +2706,9 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) head, tail, (unsigned long)packet_size); } @@ -762,7 +762,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c packet = (struct wined3d_cs_packet *)&queue->data[queue->head]; packet->size = size; return packet->data; -@@ -2420,15 +2712,29 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) +@@ -2424,15 +2716,29 @@ static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size) static void wined3d_cs_mt_finish(struct wined3d_cs *cs) { @@ -792,7 +792,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c wined3d_cs_mt_require_space, wined3d_cs_mt_submit, wined3d_cs_mt_finish, -@@ -2450,6 +2756,15 @@ static void poll_queries(struct wined3d_cs *cs) +@@ -2454,6 +2760,15 @@ static void poll_queries(struct wined3d_cs *cs) } } @@ -808,7 +808,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c static void wined3d_cs_wait_event(struct wined3d_cs *cs) { InterlockedExchange(&cs->waiting_for_event, TRUE); -@@ -2461,7 +2776,11 @@ static void wined3d_cs_wait_event(struct wined3d_cs *cs) +@@ -2465,7 +2780,11 @@ static void wined3d_cs_wait_event(struct wined3d_cs *cs) * Likewise, we can race with the main thread when resetting * "waiting_for_event", in which case we would need to call * WaitForSingleObject() because the main thread called SetEvent(). */ @@ -820,7 +820,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c && InterlockedCompareExchange(&cs->waiting_for_event, FALSE, TRUE)) return; -@@ -2480,7 +2799,9 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) +@@ -2484,7 +2803,9 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) TRACE("Started.\n"); @@ -830,7 +830,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c list_init(&cs->query_poll_list); cs->thread_id = GetCurrentThreadId(); for (;;) -@@ -2491,7 +2812,11 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) +@@ -2495,7 +2816,11 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) poll = 0; } @@ -842,7 +842,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c { if (++spin_count >= WINED3D_CS_SPIN_COUNT && list_empty(&cs->query_poll_list)) wined3d_cs_wait_event(cs); -@@ -2520,7 +2845,9 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) +@@ -2524,7 +2849,9 @@ static DWORD WINAPI wined3d_cs_run(void *ctx) InterlockedExchange(&queue->tail, tail); } @@ -852,7 +852,7 @@ diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c TRACE("Stopped.\n"); FreeLibraryAndExitThread(cs->wined3d_module, 0); } -@@ -2594,6 +2921,9 @@ void wined3d_cs_destroy(struct wined3d_cs *cs) +@@ -2598,6 +2925,9 @@ void wined3d_cs_destroy(struct wined3d_cs *cs) if (cs->thread) { wined3d_cs_emit_stop(cs); @@ -887,7 +887,7 @@ diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c wined3d_device_delete_opengl_contexts(device); if (device->fb.depth_stencil) -@@ -4236,6 +4243,7 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev +@@ -4241,6 +4248,7 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev return WINED3DERR_INVALIDCALL; } @@ -895,7 +895,7 @@ diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c if (dst_texture->sub_resources[dst_sub_resource_idx].map_count) { WARN("Destination sub-resource %u is mapped.\n", dst_sub_resource_idx); -@@ -4246,6 +4254,19 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev +@@ -4251,6 +4259,19 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev { WARN("Source sub-resource %u is mapped.\n", src_sub_resource_idx); return WINED3DERR_INVALIDCALL; @@ -915,7 +915,7 @@ diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c } if (!src_box) -@@ -4735,7 +4756,11 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device, +@@ -4740,7 +4761,11 @@ HRESULT CDECL wined3d_device_reset(struct wined3d_device *device, TRACE("device %p, swapchain_desc %p, mode %p, callback %p, reset_state %#x.\n", device, swapchain_desc, mode, callback, reset_state); @@ -927,7 +927,7 @@ diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c if (!(swapchain = wined3d_device_get_swapchain(device, 0))) { -@@ -5287,3 +5312,58 @@ LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL +@@ -5292,3 +5317,58 @@ LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL else return CallWindowProcA(proc, window, message, wparam, lparam); } @@ -1360,7 +1360,7 @@ diff --git a/dlls/wined3d/wined3d_main.c b/dlls/wined3d/wined3d_main.c diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h -@@ -2667,6 +2667,16 @@ struct wined3d_state +@@ -2668,6 +2668,16 @@ struct wined3d_state struct wined3d_rasterizer_state *rasterizer_state; }; @@ -1377,7 +1377,7 @@ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h #define WINED3D_UNMAPPED_STAGE ~0u /* Multithreaded flag. Removed from the public header to signal that -@@ -2778,6 +2788,12 @@ LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL +@@ -2779,6 +2789,12 @@ LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL void device_resource_add(struct wined3d_device *device, struct wined3d_resource *resource) DECLSPEC_HIDDEN; void device_resource_released(struct wined3d_device *device, struct wined3d_resource *resource) DECLSPEC_HIDDEN; void device_invalidate_state(const struct wined3d_device *device, DWORD state) DECLSPEC_HIDDEN; @@ -1390,7 +1390,7 @@ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h static inline BOOL isStateDirty(const struct wined3d_context *context, DWORD state) { -@@ -2964,7 +2980,11 @@ struct wined3d_texture +@@ -2965,7 +2981,11 @@ struct wined3d_texture unsigned int map_count; DWORD locations; @@ -1402,7 +1402,7 @@ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h } sub_resources[1]; }; -@@ -3272,7 +3292,12 @@ struct wined3d_cs_queue +@@ -3273,7 +3293,12 @@ struct wined3d_cs_queue struct wined3d_cs_ops { @@ -1415,7 +1415,7 @@ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h void (*submit)(struct wined3d_cs *cs); void (*finish)(struct wined3d_cs *cs); void (*push_constants)(struct wined3d_cs *cs, enum wined3d_push_constants p, -@@ -3289,7 +3314,13 @@ struct wined3d_cs +@@ -3290,7 +3315,13 @@ struct wined3d_cs HANDLE thread; DWORD thread_id; @@ -1429,7 +1429,7 @@ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h size_t data_size, start, end; void *data; struct list query_poll_list; -@@ -3372,6 +3403,9 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined +@@ -3373,6 +3404,9 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3d_vertex_declaration *declaration) DECLSPEC_HIDDEN; void wined3d_cs_emit_set_viewport(struct wined3d_cs *cs, const struct wined3d_viewport *viewport) DECLSPEC_HIDDEN;