Module: wine Branch: master Commit: d790530df34f9129b4e2bf80311f966ca39c752f URL: http://source.winehq.org/git/wine.git/?a=commit;h=d790530df34f9129b4e2bf8031...
Author: Stefan Dösinger stefan@codeweavers.com Date: Thu Mar 11 15:41:31 2010 +0100
wined3d: Make resources 16 byte aligned.
---
dlls/d3d9/tests/buffer.c | 5 +++-- dlls/wined3d/wined3d_private.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/dlls/d3d9/tests/buffer.c b/dlls/d3d9/tests/buffer.c index 57a6495..719ce7e 100644 --- a/dlls/d3d9/tests/buffer.c +++ b/dlls/d3d9/tests/buffer.c @@ -137,6 +137,7 @@ static void test_vertex_buffer_alignment(IDirect3DDevice9 *device) DWORD sizes[] = {1, 4, 16, 17, 32, 33, 64, 65, 1024, 1025, 1048576, 1048577}; unsigned int i, j; void *data; + unsigned int align = 16;
for(i = 0; i < (sizeof(sizes) / sizeof(sizes[0])); i++) { @@ -156,8 +157,8 @@ static void test_vertex_buffer_alignment(IDirect3DDevice9 *device)
hr = IDirect3DVertexBuffer9_Lock(buffer, 0, 0, &data, 0); ok(SUCCEEDED(hr), "IDirect3DVertexBuffer9_Lock failed (0x%08x)\n", hr); - ok(((DWORD_PTR) data & 31) == 0, "Vertex buffer start address is not 32 byte aligned(size: %d, pool: %s, data: %p)\n", - sizes[i], debug_d3dpool(pools[j]), data); + ok(((DWORD_PTR) data & (align - 1)) == 0, "Vertex buffer start address is not %u byte aligned(size: %d, pool: %s, data: %p)\n", + align, sizes[i], debug_d3dpool(pools[j]), data); hr = IDirect3DVertexBuffer9_Unlock(buffer); ok(SUCCEEDED(hr), "IDirect3DVertexBuffer9_Unlock failed (0x%08x)\n", hr);
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 2271d4e..5c2e42d 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -1798,7 +1798,7 @@ HRESULT resource_set_private_data(IWineD3DResource *iface, REFGUID guid, const void *data, DWORD data_size, DWORD flags) DECLSPEC_HIDDEN;
/* Tests show that the start address of resources is 32 byte aligned */ -#define RESOURCE_ALIGNMENT 32 +#define RESOURCE_ALIGNMENT 16
/***************************************************************************** * IWineD3DBaseTexture D3D- > openGL state map lookups