Skip to content

Commit

Permalink
Update to wine-staging-3.5
Browse files Browse the repository at this point in the history
  • Loading branch information
FireBurn committed Apr 1, 2018
1 parent 87307b1 commit e94417f
Show file tree
Hide file tree
Showing 9 changed files with 123 additions and 139 deletions.
@@ -1,11 +1,10 @@
From 1f69076549bf2351eb6d8d885b35a46b4dc69813 Mon Sep 17 00:00:00 2001
From da3cbbdc792eef0783442c1b7baae3db9e6a528d Mon Sep 17 00:00:00 2001
From: Andrew Comminos <andrew@comminos.com>
Date: Mon, 5 Mar 2018 15:38:35 -0800
Date: Sun, 1 Apr 2018 02:16:11 +0100
Subject: [PATCH 1/9] wined3d: Initial implementation of a persistent mapped
buffer allocator.

---
dlls/wined3d-csmt/Makefile.in | 1 +
dlls/wined3d/Makefile.in | 1 +
dlls/wined3d/buffer_heap.c | 508 +++++++++++++++++++++++++++++++++++++++++
dlls/wined3d/cs.c | 9 +
Expand All @@ -14,23 +13,11 @@ Subject: [PATCH 1/9] wined3d: Initial implementation of a persistent mapped
dlls/wined3d/query.c | 2 +-
dlls/wined3d/wined3d_gl.h | 1 +
dlls/wined3d/wined3d_private.h | 68 +++++-
9 files changed, 641 insertions(+), 4 deletions(-)
8 files changed, 640 insertions(+), 4 deletions(-)
create mode 100644 dlls/wined3d/buffer_heap.c

diff --git a/dlls/wined3d-csmt/Makefile.in b/dlls/wined3d-csmt/Makefile.in
index 1d0458eb46..cb3a5484c6 100644
--- a/dlls/wined3d-csmt/Makefile.in
+++ b/dlls/wined3d-csmt/Makefile.in
@@ -8,6 +8,7 @@ C_SRCS = \
arb_program_shader.c \
ati_fragment_shader.c \
buffer.c \
+ buffer_heap.c \
context.c \
cs.c \
device.c \
diff --git a/dlls/wined3d/Makefile.in b/dlls/wined3d/Makefile.in
index b850ba6872..52ef8666fb 100644
index b850ba6..52ef866 100644
--- a/dlls/wined3d/Makefile.in
+++ b/dlls/wined3d/Makefile.in
@@ -6,6 +6,7 @@ C_SRCS = \
Expand All @@ -43,7 +30,7 @@ index b850ba6872..52ef8666fb 100644
device.c \
diff --git a/dlls/wined3d/buffer_heap.c b/dlls/wined3d/buffer_heap.c
new file mode 100644
index 0000000000..b133bd6893
index 0000000..b133bd6
--- /dev/null
+++ b/dlls/wined3d/buffer_heap.c
@@ -0,0 +1,508 @@
Expand Down Expand Up @@ -556,10 +543,10 @@ index 0000000000..b133bd6893
+ return WINED3D_OK;
+}
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
index 3a7c95ddd8..50a4d041cd 100644
index 6697cff..f4ea41c 100644
--- a/dlls/wined3d/cs.c
+++ b/dlls/wined3d/cs.c
@@ -472,6 +472,15 @@ static void wined3d_cs_exec_present(struct wined3d_cs *cs, const void *data)
@@ -465,6 +465,15 @@ static void wined3d_cs_exec_present(struct wined3d_cs *cs, const void *data)
}

InterlockedDecrement(&cs->pending_presents);
Expand All @@ -576,10 +563,10 @@ index 3a7c95ddd8..50a4d041cd 100644

void wined3d_cs_emit_present(struct wined3d_cs *cs, struct wined3d_swapchain *swapchain,
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index e2b27e0cf4..785841a062 100644
index c3f5e09..57958da 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -833,6 +833,53 @@ static void destroy_default_samplers(struct wined3d_device *device, struct wined
@@ -840,6 +840,53 @@ static void destroy_default_samplers(struct wined3d_device *device, struct wined
device->null_sampler = NULL;
}

Expand Down Expand Up @@ -633,7 +620,7 @@ index e2b27e0cf4..785841a062 100644
static LONG fullscreen_style(LONG style)
{
/* Make sure the window is managed, otherwise we won't get keyboard input. */
@@ -997,6 +1044,8 @@ static void wined3d_device_delete_opengl_contexts_cs(void *object)
@@ -1004,6 +1051,8 @@ static void wined3d_device_delete_opengl_contexts_cs(void *object)
device->shader_backend->shader_free_private(device);
destroy_dummy_textures(device, context);
destroy_default_samplers(device, context);
Expand All @@ -642,7 +629,7 @@ index e2b27e0cf4..785841a062 100644
context_release(context);

while (device->context_count)
@@ -1045,6 +1094,9 @@ static void wined3d_device_create_primary_opengl_context_cs(void *object)
@@ -1052,6 +1101,9 @@ static void wined3d_device_create_primary_opengl_context_cs(void *object)
context = context_acquire(device, target, 0);
create_dummy_textures(device, context);
create_default_samplers(device, context);
Expand All @@ -653,7 +640,7 @@ index e2b27e0cf4..785841a062 100644
}

diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 8720fc7ad6..46c6a59536 100644
index d55d567..eabdb65 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -111,6 +111,7 @@ static const struct wined3d_extension_map gl_extension_map[] =
Expand All @@ -664,7 +651,7 @@ index 8720fc7ad6..46c6a59536 100644
{"GL_ARB_clear_buffer_object", ARB_CLEAR_BUFFER_OBJECT },
{"GL_ARB_clear_texture", ARB_CLEAR_TEXTURE },
{"GL_ARB_clip_control", ARB_CLIP_CONTROL },
@@ -2714,6 +2715,8 @@ static void load_gl_funcs(struct wined3d_gl_info *gl_info)
@@ -2713,6 +2714,8 @@ static void load_gl_funcs(struct wined3d_gl_info *gl_info)
/* GL_ARB_blend_func_extended */
USE_GL_FUNC(glBindFragDataLocationIndexed)
USE_GL_FUNC(glGetFragDataIndex)
Expand All @@ -674,7 +661,7 @@ index 8720fc7ad6..46c6a59536 100644
USE_GL_FUNC(glClearBufferData)
USE_GL_FUNC(glClearBufferSubData)
diff --git a/dlls/wined3d/query.c b/dlls/wined3d/query.c
index 5ea79b6e4a..f3ca1630e5 100644
index 5ea79b6..f3ca163 100644
--- a/dlls/wined3d/query.c
+++ b/dlls/wined3d/query.c
@@ -88,7 +88,7 @@ static BOOL wined3d_fence_supported(const struct wined3d_gl_info *gl_info)
Expand All @@ -687,7 +674,7 @@ index 5ea79b6e4a..f3ca1630e5 100644
{
const struct wined3d_gl_info *gl_info;
diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h
index 87283c850e..7626864ef2 100644
index bbee788..730eff1 100644
--- a/dlls/wined3d/wined3d_gl.h
+++ b/dlls/wined3d/wined3d_gl.h
@@ -44,6 +44,7 @@ enum wined3d_gl_extension
Expand All @@ -699,7 +686,7 @@ index 87283c850e..7626864ef2 100644
ARB_CLEAR_TEXTURE,
ARB_CLIP_CONTROL,
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 8aa61d811f..3d535f4e17 100644
index 3c183a1..ee52801 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -1712,6 +1712,9 @@ void wined3d_fence_destroy(struct wined3d_fence *fence) DECLSPEC_HIDDEN;
Expand All @@ -712,7 +699,7 @@ index 8aa61d811f..3d535f4e17 100644

/* Direct3D terminology with little modifications. We do not have an issued
* state because only the driver knows about it, but we have a created state
@@ -2993,6 +2996,10 @@ struct wined3d_device
@@ -2980,6 +2983,10 @@ struct wined3d_device
/* Context management */
struct wined3d_context **contexts;
UINT context_count;
Expand All @@ -723,7 +710,7 @@ index 8aa61d811f..3d535f4e17 100644
};

void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, const struct wined3d_fb_state *fb,
@@ -3513,6 +3520,12 @@ void state_init(struct wined3d_state *state, struct wined3d_fb_state *fb,
@@ -3480,6 +3487,12 @@ void state_init(struct wined3d_state *state, struct wined3d_fb_state *fb,
DWORD flags) DECLSPEC_HIDDEN;
void state_unbind_resources(struct wined3d_state *state) DECLSPEC_HIDDEN;

Expand All @@ -736,7 +723,7 @@ index 8aa61d811f..3d535f4e17 100644
enum wined3d_cs_queue_id
{
WINED3D_CS_QUEUE_DEFAULT = 0,
@@ -3692,12 +3705,61 @@ enum wined3d_buffer_conversion_type
@@ -3657,12 +3670,61 @@ enum wined3d_buffer_conversion_type
CONV_POSITIONT,
};

Expand Down Expand Up @@ -802,5 +789,5 @@ index 8aa61d811f..3d535f4e17 100644
{
struct wined3d_resource resource;
--
2.16.2
2.16.3

0 comments on commit e94417f

Please sign in to comment.