Rebase against 1576dc3dd26c7bbb2ed8eb68f11799f1f1d8b6a2.

This commit is contained in:
Sebastian Lackner
2017-01-08 04:42:04 +01:00
parent cb8a0d2ffd
commit b51fe90caa
8 changed files with 487 additions and 250 deletions

View File

@@ -1,4 +1,4 @@
From 40dce808e5579bd12a4a31eb93c0499000ae5f00 Mon Sep 17 00:00:00 2001
From 5237dd1b75bc109101d8476cdd0c8ce30cc628d4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 16 Apr 2016 18:18:54 +0200
Subject: wined3d: Add stubs for QUERY_TYPE_SO_STATISTICS and
@@ -12,10 +12,10 @@ Subject: wined3d: Add stubs for QUERY_TYPE_SO_STATISTICS and
4 files changed, 100 insertions(+), 4 deletions(-)
diff --git a/dlls/d3d10core/tests/device.c b/dlls/d3d10core/tests/device.c
index f3c4ac8..d3ddef7 100644
index 0b38265c83f..3c47f9cbcdb 100644
--- a/dlls/d3d10core/tests/device.c
+++ b/dlls/d3d10core/tests/device.c
@@ -3539,8 +3539,8 @@ static void test_create_query(void)
@@ -3591,8 +3591,8 @@ static void test_create_query(void)
{D3D10_QUERY_TIMESTAMP_DISJOINT, FALSE, FALSE},
{D3D10_QUERY_PIPELINE_STATISTICS, FALSE, TRUE},
{D3D10_QUERY_OCCLUSION_PREDICATE, TRUE, FALSE},
@@ -27,10 +27,10 @@ index f3c4ac8..d3ddef7 100644
ULONG refcount, expected_refcount;
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index 276f58f..648dc05 100644
index ac4393dd3b3..ac96918aed3 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -4525,8 +4525,8 @@ static void test_create_query(void)
@@ -4566,8 +4566,8 @@ static void test_create_query(void)
{D3D11_QUERY_TIMESTAMP_DISJOINT, D3D_FEATURE_LEVEL_10_0, FALSE, FALSE, FALSE},
{D3D11_QUERY_PIPELINE_STATISTICS, D3D_FEATURE_LEVEL_10_0, FALSE, FALSE, TRUE},
{D3D11_QUERY_OCCLUSION_PREDICATE, D3D_FEATURE_LEVEL_10_0, TRUE, TRUE, FALSE},
@@ -42,10 +42,10 @@ index 276f58f..648dc05 100644
{D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0, D3D_FEATURE_LEVEL_11_0, TRUE, FALSE, TRUE},
{D3D11_QUERY_SO_STATISTICS_STREAM1, D3D_FEATURE_LEVEL_11_0, FALSE, FALSE, TRUE},
diff --git a/dlls/wined3d/query.c b/dlls/wined3d/query.c
index 55e63e9..aca5d85 100644
index 9f75a493d5f..c5ca37d4878 100644
--- a/dlls/wined3d/query.c
+++ b/dlls/wined3d/query.c
@@ -295,6 +295,14 @@ static void wined3d_query_destroy_object(void *object)
@@ -296,6 +296,14 @@ static void wined3d_query_destroy_object(void *object)
{
HeapFree(GetProcessHeap(), 0, query);
}
@@ -60,13 +60,13 @@ index 55e63e9..aca5d85 100644
else
{
ERR("Query %p has invalid type %#x.\n", query, query->type);
@@ -601,6 +609,30 @@ static void wined3d_timestamp_disjoint_query_ops_issue(struct wined3d_query *que
@@ -614,6 +622,30 @@ static void wined3d_timestamp_disjoint_query_ops_issue(struct wined3d_query *que
TRACE("query %p, flags %#x.\n", query, flags);
}
+static BOOL wined3d_statistics_query_ops_poll(struct wined3d_query *query)
+static BOOL wined3d_statistics_query_ops_poll(struct wined3d_query *query, DWORD flags)
+{
+ TRACE("query %p.\n", query);
+ TRACE("query %p, flags %#x.\n", query, flags);
+
+ return TRUE;
+}
@@ -76,9 +76,9 @@ index 55e63e9..aca5d85 100644
+ FIXME("query %p, flags %#x.\n", query, flags);
+}
+
+static HRESULT wined3d_overflow_query_ops_poll(struct wined3d_query *query)
+static HRESULT wined3d_overflow_query_ops_poll(struct wined3d_query *query, DWORD flags)
+{
+ TRACE("query %p.\n", query);
+ TRACE("query %p, flags %#x.\n", query, flags);
+
+ return TRUE;
+}
@@ -91,7 +91,7 @@ index 55e63e9..aca5d85 100644
static const struct wined3d_query_ops event_query_ops =
{
wined3d_event_query_ops_poll,
@@ -741,6 +773,58 @@ static HRESULT wined3d_timestamp_disjoint_query_create(struct wined3d_device *de
@@ -754,6 +786,58 @@ static HRESULT wined3d_timestamp_disjoint_query_create(struct wined3d_device *de
return WINED3D_OK;
}
@@ -150,7 +150,7 @@ index 55e63e9..aca5d85 100644
HRESULT CDECL wined3d_query_create(struct wined3d_device *device,
enum wined3d_query_type type, void *parent, struct wined3d_query **query)
{
@@ -761,6 +845,12 @@ HRESULT CDECL wined3d_query_create(struct wined3d_device *device,
@@ -774,6 +858,12 @@ HRESULT CDECL wined3d_query_create(struct wined3d_device *device,
case WINED3D_QUERY_TYPE_TIMESTAMP_FREQ:
return wined3d_timestamp_disjoint_query_create(device, type, parent, query);
@@ -164,10 +164,10 @@ index 55e63e9..aca5d85 100644
FIXME("Unhandled query type %#x.\n", type);
return WINED3DERR_NOTAVAILABLE;
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
index cd2dd3b..10b1ec2 100644
index 7271ec055ae..0357bfda6d8 100644
--- a/include/wine/wined3d.h
+++ b/include/wine/wined3d.h
@@ -702,6 +702,12 @@ struct wined3d_query_data_timestamp_disjoint
@@ -705,6 +705,12 @@ struct wined3d_query_data_timestamp_disjoint
BOOL disjoint;
};
@@ -181,5 +181,5 @@ index cd2dd3b..10b1ec2 100644
#define WINED3DISSUE_END (1u << 0)
#define WINED3DGETDATA_FLUSH (1u << 0)
--
2.9.0
2.11.0