Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/d3d10/effect.c | 10 +- dlls/d3d10/tests/effect.c | 264 +++++++++++++++++++------------------- 2 files changed, 140 insertions(+), 134 deletions(-)
diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c index 4807136f670..9801148f317 100644 --- a/dlls/d3d10/effect.c +++ b/dlls/d3d10/effect.c @@ -611,7 +611,8 @@ static void d3d10_effect_cleanup_so_decl(struct d3d10_effect_so_decl *so_decl) static HRESULT d3d10_effect_parse_stream_output_declaration(const char *decl, struct d3d10_effect_so_decl *so_decl) { - static const char * allmask = "xyzw"; + static const char * xyzw = "xyzw"; + static const char * rgba = "rgba"; char *p, *ptr, *end, *next, *mask, *m, *slot; unsigned int len = strlen(decl); D3D10_SO_DECLARATION_ENTRY e; @@ -665,13 +666,16 @@ static HRESULT d3d10_effect_parse_stream_output_declaration(const char *decl, { *mask = 0; mask++;
- if (!(m = strstr(allmask, mask))) + if ((m = strstr(xyzw, mask))) + e.StartComponent = m - xyzw; + else if ((m = strstr(rgba, mask))) + e.StartComponent = m - rgba; + else { WARN("Invalid component mask %s.\n", debugstr_a(mask)); goto failed; }
- e.StartComponent = m - allmask; e.ComponentCount = strlen(mask); } else diff --git a/dlls/d3d10/tests/effect.c b/dlls/d3d10/tests/effect.c index ba46b18b678..f539f7ccbef 100644 --- a/dlls/d3d10/tests/effect.c +++ b/dlls/d3d10/tests/effect.c @@ -2562,7 +2562,7 @@ PixelShader p = CompileShader( ps_4_0, PS() ); GeometryShader g = CompileShader( gs_4_0, GS() ); GeometryShader g_so = ConstructGSWithSO ( - CompileShader( gs_4_0, GS()), "SV_POSITION.x" + CompileShader( gs_4_0, GS()), "SV_POSITION.x; SV_POSITION.gb" ); technique10 Render { @@ -2619,9 +2619,9 @@ technique10 Render #endif static DWORD fx_local_shader[] = { - 0x43425844, 0xd50d5743, 0xb5236e8f, 0x9a35cd8d, 0x59e3afe1, 0x00000001, 0x00001a92, 0x00000001, - 0x00000024, 0x30315846, 0x00001a66, 0xfeff1001, 0x00000000, 0x00000000, 0x00000007, 0x00000000, - 0x00000000, 0x00000000, 0x00000001, 0x00001772, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x43425844, 0xcda86d46, 0x93a136d9, 0x30ef9020, 0x9a7a6e0e, 0x00000001, 0x00001aa2, 0x00000001, + 0x00000024, 0x30315846, 0x00001a76, 0xfeff1001, 0x00000000, 0x00000000, 0x00000007, 0x00000000, + 0x00000000, 0x00000000, 0x00000001, 0x00001782, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000000f, 0x00000007, 0x00000000, 0x74726556, 0x68537865, 0x72656461, 0x00000400, 0x00000200, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000600, 0x00307600, 0x65786950, 0x6168536c, 0x00726564, 0x00000030, 0x00000002, 0x00000000, @@ -2702,136 +2702,137 @@ static DWORD fx_local_shader[] = 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000003, 0x00000005, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x505f5653, 0x5449534f, 0x2e4e4f49, - 0x65520078, 0x7265646e, 0x00305000, 0x01003150, 0x02000000, 0x00000000, 0x01000000, 0x02000000, - 0x00000000, 0x01000000, 0x02000000, 0x00000000, 0x50000000, 0x00010032, 0x00020000, 0x00000000, - 0x00010000, 0x00020000, 0x00000000, 0x00010000, 0x00020000, 0x00000000, 0x33500000, 0x0001a400, - 0x42584400, 0xf4813443, 0xb6605b8e, 0xc69999b8, 0xcb75f1b5, 0x000001eb, 0x0001a400, 0x00000500, - 0x00003400, 0x00008000, 0x0000b400, 0x0000e800, 0x00012800, 0x45445200, 0x00004446, 0x00000000, - 0x00000000, 0x00000000, 0x00001c00, 0xff040000, 0x000100ff, 0x00001c00, 0x63694d00, 0x6f736f72, - 0x28207466, 0x48202952, 0x204c534c, 0x64616853, 0x43207265, 0x69706d6f, 0x2072656c, 0x312e3031, - 0x47534900, 0x00002c4e, 0x00000100, 0x00000800, 0x00002000, 0x00000000, 0x00000100, 0x00000300, - 0x00000000, 0x00000f00, 0x5f565300, 0x49534f50, 0x4e4f4954, 0x47534f00, 0x00002c4e, 0x00000100, - 0x00000800, 0x00002000, 0x00000000, 0x00000000, 0x00000300, 0x00000000, 0x00000f00, 0x5f565300, - 0x67726154, 0xab007465, 0x444853ab, 0x00003852, 0x00004000, 0x00000e00, 0x00006500, 0x1020f203, - 0x00000000, 0x00003600, 0x1020f208, 0x00000000, 0x00400200, 0x80000000, 0x8000003f, 0x0000003f, - 0x80000000, 0x00003e3f, 0x41545301, 0x00007454, 0x00000200, 0x00000000, 0x00000000, 0x00000100, - 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x000a4500, 0x00000000, 0x0001a800, 0x42584400, 0xa3fc9243, 0xfa34a75e, 0x1a2113af, - 0xd04a46be, 0x00000104, 0x0001a800, 0x00000500, 0x00003400, 0x00008000, 0x0000b400, 0x0000e800, - 0x00012c00, 0x45445200, 0x00004446, 0x00000000, 0x00000000, 0x00000000, 0x00001c00, 0xfe040000, + 0x53203b78, 0x4f505f56, 0x49544953, 0x672e4e4f, 0x65520062, 0x7265646e, 0x00305000, 0x01003150, + 0x02000000, 0x00000000, 0x01000000, 0x02000000, 0x00000000, 0x01000000, 0x02000000, 0x00000000, + 0x50000000, 0x00010032, 0x00020000, 0x00000000, 0x00010000, 0x00020000, 0x00000000, 0x00010000, + 0x00020000, 0x00000000, 0x33500000, 0x0001a400, 0x42584400, 0xf4813443, 0xb6605b8e, 0xc69999b8, + 0xcb75f1b5, 0x000001eb, 0x0001a400, 0x00000500, 0x00003400, 0x00008000, 0x0000b400, 0x0000e800, + 0x00012800, 0x45445200, 0x00004446, 0x00000000, 0x00000000, 0x00000000, 0x00001c00, 0xff040000, 0x000100ff, 0x00001c00, 0x63694d00, 0x6f736f72, 0x28207466, 0x48202952, 0x204c534c, 0x64616853, 0x43207265, 0x69706d6f, 0x2072656c, 0x312e3031, 0x47534900, 0x00002c4e, 0x00000100, 0x00000800, - 0x00002000, 0x00000000, 0x00000000, 0x00000300, 0x00000000, 0x000f0f00, 0x534f5000, 0x4f495449, - 0xabab004e, 0x47534fab, 0x00002c4e, 0x00000100, 0x00000800, 0x00002000, 0x00000000, 0x00000100, - 0x00000300, 0x00000000, 0x00000f00, 0x5f565300, 0x49534f50, 0x4e4f4954, 0x44485300, 0x00003c52, - 0x01004000, 0x00000f00, 0x00005f00, 0x1010f203, 0x00000000, 0x00006700, 0x1020f204, 0x00000000, - 0x00000100, 0x00003600, 0x1020f205, 0x00000000, 0x101e4600, 0x00000000, 0x00003e00, 0x41545301, - 0x00007454, 0x00000200, 0x00000000, 0x00000000, 0x00000200, 0x00000000, 0x00000000, 0x00000000, - 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000bf500, 0x00000000, - 0x00020400, 0x42584400, 0x325e2343, 0x74e86e8e, 0x36e15f07, 0xf67abfe6, 0x000001d3, 0x00020400, - 0x00000500, 0x00003400, 0x00008000, 0x0000b400, 0x0000e800, 0x00018800, 0x45445200, 0x00004446, - 0x00000000, 0x00000000, 0x00000000, 0x00001c00, 0x53040000, 0x00010047, 0x00001c00, 0x63694d00, - 0x6f736f72, 0x28207466, 0x48202952, 0x204c534c, 0x64616853, 0x43207265, 0x69706d6f, 0x2072656c, - 0x312e3031, 0x47534900, 0x00002c4e, 0x00000100, 0x00000800, 0x00002000, 0x00000000, 0x00000100, - 0x00000300, 0x00000000, 0x000f0f00, 0x5f565300, 0x49534f50, 0x4e4f4954, 0x47534f00, 0x00002c4e, - 0x00000100, 0x00000800, 0x00002000, 0x00000000, 0x00000100, 0x00000300, 0x00000000, 0x00000f00, - 0x5f565300, 0x49534f50, 0x4e4f4954, 0x44485300, 0x00009852, 0x02004000, 0x00002600, 0x00006100, - 0x2010f205, 0x00000300, 0x00000000, 0x00000100, 0x00185d00, 0x00285c01, 0x00006701, 0x1020f204, - 0x00000000, 0x00000100, 0x00005e00, 0x00000302, 0x00003600, 0x1020f206, 0x00000000, 0x201e4600, - 0x00000000, 0x00000000, 0x00001300, 0x00003601, 0x1020f206, 0x00000000, 0x201e4600, 0x00000100, - 0x00000000, 0x00001300, 0x00003601, 0x1020f206, 0x00000000, 0x201e4600, 0x00000200, 0x00000000, - 0x00001300, 0x00000901, 0x00003e01, 0x41545301, 0x00007454, 0x00000800, 0x00000000, 0x00000000, + 0x00002000, 0x00000000, 0x00000100, 0x00000300, 0x00000000, 0x00000f00, 0x5f565300, 0x49534f50, + 0x4e4f4954, 0x47534f00, 0x00002c4e, 0x00000100, 0x00000800, 0x00002000, 0x00000000, 0x00000000, + 0x00000300, 0x00000000, 0x00000f00, 0x5f565300, 0x67726154, 0xab007465, 0x444853ab, 0x00003852, + 0x00004000, 0x00000e00, 0x00006500, 0x1020f203, 0x00000000, 0x00003600, 0x1020f208, 0x00000000, + 0x00400200, 0x80000000, 0x8000003f, 0x0000003f, 0x80000000, 0x00003e3f, 0x41545301, 0x00007454, + 0x00000200, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000100, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000a5500, 0x00000000, 0x0001a800, + 0x42584400, 0xa3fc9243, 0xfa34a75e, 0x1a2113af, 0xd04a46be, 0x00000104, 0x0001a800, 0x00000500, + 0x00003400, 0x00008000, 0x0000b400, 0x0000e800, 0x00012c00, 0x45445200, 0x00004446, 0x00000000, + 0x00000000, 0x00000000, 0x00001c00, 0xfe040000, 0x000100ff, 0x00001c00, 0x63694d00, 0x6f736f72, + 0x28207466, 0x48202952, 0x204c534c, 0x64616853, 0x43207265, 0x69706d6f, 0x2072656c, 0x312e3031, + 0x47534900, 0x00002c4e, 0x00000100, 0x00000800, 0x00002000, 0x00000000, 0x00000000, 0x00000300, + 0x00000000, 0x000f0f00, 0x534f5000, 0x4f495449, 0xabab004e, 0x47534fab, 0x00002c4e, 0x00000100, + 0x00000800, 0x00002000, 0x00000000, 0x00000100, 0x00000300, 0x00000000, 0x00000f00, 0x5f565300, + 0x49534f50, 0x4e4f4954, 0x44485300, 0x00003c52, 0x01004000, 0x00000f00, 0x00005f00, 0x1010f203, + 0x00000000, 0x00006700, 0x1020f204, 0x00000000, 0x00000100, 0x00003600, 0x1020f205, 0x00000000, + 0x101e4600, 0x00000000, 0x00003e00, 0x41545301, 0x00007454, 0x00000200, 0x00000000, 0x00000000, 0x00000200, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000100, 0x00000300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000300, 0x00000500, 0x00000300, 0x00000000, - 0x00000000, 0x00000000, 0x000da900, 0x00000000, 0x00345000, 0x000001a4, 0x43425844, 0x8ef48134, - 0xb8b6605b, 0xb5c69999, 0xebcb75f1, 0x00000001, 0x000001a4, 0x00000005, 0x00000034, 0x00000080, - 0x000000b4, 0x000000e8, 0x00000128, 0x46454452, 0x00000044, 0x00000000, 0x00000000, 0x00000000, - 0x0000001c, 0xffff0400, 0x00000100, 0x0000001c, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, - 0x53204c53, 0x65646168, 0x6f432072, 0x6c69706d, 0x31207265, 0x00312e30, 0x4e475349, 0x0000002c, - 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x0000000f, - 0x505f5653, 0x5449534f, 0x004e4f49, 0x4e47534f, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, - 0x00000000, 0x00000000, 0x00000003, 0x00000000, 0x0000000f, 0x545f5653, 0x65677261, 0xabab0074, - 0x52444853, 0x00000038, 0x00000040, 0x0000000e, 0x03000065, 0x001020f2, 0x00000000, 0x08000036, - 0x001020f2, 0x00000000, 0x00004002, 0x3f800000, 0x3f800000, 0x00000000, 0x3f800000, 0x0100003e, - 0x54415453, 0x00000074, 0x00000002, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, - 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000fbc, - 0x00000000, 0x000001a8, 0x43425844, 0x5ac55b84, 0x9a6a46a0, 0x0df40a92, 0xa2fea34f, 0x00000001, - 0x000001a8, 0x00000005, 0x00000034, 0x00000080, 0x000000b4, 0x000000e8, 0x0000012c, 0x46454452, - 0x00000044, 0x00000000, 0x00000000, 0x00000000, 0x0000001c, 0xfffe0400, 0x00000100, 0x0000001c, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000c0500, 0x00000000, 0x00020400, 0x42584400, 0x325e2343, 0x74e86e8e, + 0x36e15f07, 0xf67abfe6, 0x000001d3, 0x00020400, 0x00000500, 0x00003400, 0x00008000, 0x0000b400, + 0x0000e800, 0x00018800, 0x45445200, 0x00004446, 0x00000000, 0x00000000, 0x00000000, 0x00001c00, + 0x53040000, 0x00010047, 0x00001c00, 0x63694d00, 0x6f736f72, 0x28207466, 0x48202952, 0x204c534c, + 0x64616853, 0x43207265, 0x69706d6f, 0x2072656c, 0x312e3031, 0x47534900, 0x00002c4e, 0x00000100, + 0x00000800, 0x00002000, 0x00000000, 0x00000100, 0x00000300, 0x00000000, 0x000f0f00, 0x5f565300, + 0x49534f50, 0x4e4f4954, 0x47534f00, 0x00002c4e, 0x00000100, 0x00000800, 0x00002000, 0x00000000, + 0x00000100, 0x00000300, 0x00000000, 0x00000f00, 0x5f565300, 0x49534f50, 0x4e4f4954, 0x44485300, + 0x00009852, 0x02004000, 0x00002600, 0x00006100, 0x2010f205, 0x00000300, 0x00000000, 0x00000100, + 0x00185d00, 0x00285c01, 0x00006701, 0x1020f204, 0x00000000, 0x00000100, 0x00005e00, 0x00000302, + 0x00003600, 0x1020f206, 0x00000000, 0x201e4600, 0x00000000, 0x00000000, 0x00001300, 0x00003601, + 0x1020f206, 0x00000000, 0x201e4600, 0x00000100, 0x00000000, 0x00001300, 0x00003601, 0x1020f206, + 0x00000000, 0x201e4600, 0x00000200, 0x00000000, 0x00001300, 0x00000901, 0x00003e01, 0x41545301, + 0x00007454, 0x00000800, 0x00000000, 0x00000000, 0x00000200, 0x00000000, 0x00000000, 0x00000000, + 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0x00000300, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000300, 0x00000500, 0x00000300, 0x00000000, 0x00000000, 0x00000000, 0x000db900, 0x00000000, + 0x00345000, 0x000001a4, 0x43425844, 0x8ef48134, 0xb8b6605b, 0xb5c69999, 0xebcb75f1, 0x00000001, + 0x000001a4, 0x00000005, 0x00000034, 0x00000080, 0x000000b4, 0x000000e8, 0x00000128, 0x46454452, + 0x00000044, 0x00000000, 0x00000000, 0x00000000, 0x0000001c, 0xffff0400, 0x00000100, 0x0000001c, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, 0x53204c53, 0x65646168, 0x6f432072, 0x6c69706d, 0x31207265, 0x00312e30, 0x4e475349, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, - 0x00000000, 0x00000002, 0x00000000, 0x00000f0f, 0x49534f50, 0x4e4f4954, 0xababab00, 0x4e47534f, - 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000001, 0x00000003, 0x00000000, - 0x0000000f, 0x505f5653, 0x5449534f, 0x004e4f49, 0x52444853, 0x0000003c, 0x00010040, 0x0000000f, - 0x0300005f, 0x001010f2, 0x00000000, 0x04000067, 0x001020f2, 0x00000000, 0x00000001, 0x0500002b, - 0x001020f2, 0x00000000, 0x00101e46, 0x00000000, 0x0100003e, 0x54415453, 0x00000074, 0x00000002, - 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x00000001, 0x00000003, 0x00000000, 0x0000000f, 0x505f5653, 0x5449534f, 0x004e4f49, 0x4e47534f, + 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000000, 0x00000003, 0x00000000, + 0x0000000f, 0x545f5653, 0x65677261, 0xabab0074, 0x52444853, 0x00000038, 0x00000040, 0x0000000e, + 0x03000065, 0x001020f2, 0x00000000, 0x08000036, 0x001020f2, 0x00000000, 0x00004002, 0x3f800000, + 0x3f800000, 0x00000000, 0x3f800000, 0x0100003e, 0x54415453, 0x00000074, 0x00000002, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000116c, 0x00000000, 0x00000204, 0x43425844, - 0x8e325e23, 0x0774e86e, 0xe636e15f, 0xd3f67abf, 0x00000001, 0x00000204, 0x00000005, 0x00000034, - 0x00000080, 0x000000b4, 0x000000e8, 0x00000188, 0x46454452, 0x00000044, 0x00000000, 0x00000000, - 0x00000000, 0x0000001c, 0x47530400, 0x00000100, 0x0000001c, 0x7263694d, 0x666f736f, 0x52282074, - 0x4c482029, 0x53204c53, 0x65646168, 0x6f432072, 0x6c69706d, 0x31207265, 0x00312e30, 0x4e475349, - 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000001, 0x00000003, 0x00000000, - 0x00000f0f, 0x505f5653, 0x5449534f, 0x004e4f49, 0x4e47534f, 0x0000002c, 0x00000001, 0x00000008, - 0x00000020, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x0000000f, 0x505f5653, 0x5449534f, - 0x004e4f49, 0x52444853, 0x00000098, 0x00020040, 0x00000026, 0x05000061, 0x002010f2, 0x00000003, - 0x00000000, 0x00000001, 0x0100185d, 0x0100285c, 0x04000067, 0x001020f2, 0x00000000, 0x00000001, - 0x0200005e, 0x00000003, 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, 0x00000000, 0x00000000, - 0x01000013, 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, 0x00000001, 0x00000000, 0x01000013, - 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, 0x00000002, 0x00000000, 0x01000013, 0x01000009, - 0x0100003e, 0x54415453, 0x00000074, 0x00000008, 0x00000000, 0x00000000, 0x00000002, 0x00000000, - 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, - 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000003, 0x00000005, 0x00000003, 0x00000000, 0x00000000, 0x00000000, - 0x00001320, 0x00000000, 0x50003550, 0x00a50036, 0x00000000, 0x37500000, 0x0000a500, 0x00000100, - 0x00385000, 0x000000a5, 0x00000001, 0x00000204, 0x43425844, 0x8e325e23, 0x0774e86e, 0xe636e15f, - 0xd3f67abf, 0x00000001, 0x00000204, 0x00000005, 0x00000034, 0x00000080, 0x000000b4, 0x000000e8, - 0x00000188, 0x46454452, 0x00000044, 0x00000000, 0x00000000, 0x00000000, 0x0000001c, 0x47530400, - 0x00000100, 0x0000001c, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, 0x53204c53, 0x65646168, - 0x6f432072, 0x6c69706d, 0x31207265, 0x00312e30, 0x4e475349, 0x0000002c, 0x00000001, 0x00000008, - 0x00000020, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000f0f, 0x505f5653, 0x5449534f, - 0x004e4f49, 0x4e47534f, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000001, - 0x00000003, 0x00000000, 0x0000000f, 0x505f5653, 0x5449534f, 0x004e4f49, 0x52444853, 0x00000098, - 0x00020040, 0x00000026, 0x05000061, 0x002010f2, 0x00000003, 0x00000000, 0x00000001, 0x0100185d, - 0x0100285c, 0x04000067, 0x001020f2, 0x00000000, 0x00000001, 0x0200005e, 0x00000003, 0x06000036, - 0x001020f2, 0x00000000, 0x00201e46, 0x00000000, 0x00000000, 0x01000013, 0x06000036, 0x001020f2, - 0x00000000, 0x00201e46, 0x00000001, 0x00000000, 0x01000013, 0x06000036, 0x001020f2, 0x00000000, - 0x00201e46, 0x00000002, 0x00000000, 0x01000013, 0x01000009, 0x0100003e, 0x54415453, 0x00000074, - 0x00000008, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000001, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000003, - 0x00000005, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x505f5653, 0x5449534f, 0x2e4e4f49, - 0x15540079, 0x175c0000, 0x002d0000, 0x00110000, 0x00000000, 0xffff0000, 0x0000ffff, 0x00000000, - 0x00580000, 0x003c0000, 0x00000000, 0xffff0000, 0x0000ffff, 0x00000000, 0x00860000, 0x006a0000, - 0x00000000, 0xffff0000, 0x0000ffff, 0x00000000, 0x00a50000, 0x00890000, 0x00000000, 0xffff0000, - 0x00a7ffff, 0x02530000, 0x00000000, 0x03ff0000, 0x003c0000, 0x00000000, 0xffff0000, 0x0401ffff, - 0x00000000, 0x05a90000, 0x006a0000, 0x00000000, 0xffff0000, 0x05abffff, 0x00000000, 0x07cf0000, - 0x07b30000, 0x00000000, 0xffff0000, 0x07d4ffff, 0x09dc0000, 0x00000000, 0x09ea0000, 0x00090000, - 0x00000000, 0x09f10000, 0x00000000, 0x00000000, 0x09f40000, 0x00030000, 0x00000000, 0x00070000, - 0x00000000, 0x00010000, 0x09f70000, 0x00060000, 0x00000000, 0x00010000, 0x0a030000, 0x00080000, - 0x00000000, 0x00010000, 0x0a0f0000, 0x0a1b0000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, - 0x00010000, 0x0a1e0000, 0x00060000, 0x00000000, 0x00010000, 0x0a2a0000, 0x00080000, 0x00000000, - 0x00010000, 0x0a360000, 0x0a420000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00070000, - 0x0bed0000, 0x00060000, 0x00000000, 0x00070000, 0x0da10000, 0x00080000, 0x00000000, 0x00070000, - 0x0fb10000, 0x0fb90000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00070000, 0x11640000, - 0x00060000, 0x00000000, 0x00070000, 0x13180000, 0x00080000, 0x00000000, 0x00070000, 0x15280000, - 0x15300000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00020000, 0x00580000, 0x00060000, - 0x00000000, 0x00020000, 0x002d0000, 0x00080000, 0x00000000, 0x00020000, 0x00860000, 0x15330000, - 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00020000, 0x03ff0000, 0x00060000, 0x00000000, - 0x00030000, 0x15360000, 0x00080000, 0x00000000, 0x00020000, 0x05a90000, 0x153e0000, 0x00030000, - 0x00000000, 0x00070000, 0x00000000, 0x00020000, 0x03ff0000, 0x00060000, 0x00000000, 0x00030000, - 0x15410000, 0x00080000, 0x00000000, 0x00020000, 0x05a90000, 0x15490000, 0x00030000, 0x00000000, - 0x00070000, 0x00000000, 0x00020000, 0x03ff0000, 0x00060000, 0x00000000, 0x00030000, 0x154c0000, - 0x00080000, 0x00000000, 0x00070000, 0x176a0000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000fcc, 0x00000000, 0x000001a8, 0x43425844, 0x5ac55b84, + 0x9a6a46a0, 0x0df40a92, 0xa2fea34f, 0x00000001, 0x000001a8, 0x00000005, 0x00000034, 0x00000080, + 0x000000b4, 0x000000e8, 0x0000012c, 0x46454452, 0x00000044, 0x00000000, 0x00000000, 0x00000000, + 0x0000001c, 0xfffe0400, 0x00000100, 0x0000001c, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, + 0x53204c53, 0x65646168, 0x6f432072, 0x6c69706d, 0x31207265, 0x00312e30, 0x4e475349, 0x0000002c, + 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000f0f, + 0x49534f50, 0x4e4f4954, 0xababab00, 0x4e47534f, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, + 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x0000000f, 0x505f5653, 0x5449534f, 0x004e4f49, + 0x52444853, 0x0000003c, 0x00010040, 0x0000000f, 0x0300005f, 0x001010f2, 0x00000000, 0x04000067, + 0x001020f2, 0x00000000, 0x00000001, 0x0500002b, 0x001020f2, 0x00000000, 0x00101e46, 0x00000000, + 0x0100003e, 0x54415453, 0x00000074, 0x00000002, 0x00000000, 0x00000000, 0x00000002, 0x00000000, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000117c, 0x00000000, 0x00000204, 0x43425844, 0x8e325e23, 0x0774e86e, 0xe636e15f, 0xd3f67abf, + 0x00000001, 0x00000204, 0x00000005, 0x00000034, 0x00000080, 0x000000b4, 0x000000e8, 0x00000188, + 0x46454452, 0x00000044, 0x00000000, 0x00000000, 0x00000000, 0x0000001c, 0x47530400, 0x00000100, + 0x0000001c, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, 0x53204c53, 0x65646168, 0x6f432072, + 0x6c69706d, 0x31207265, 0x00312e30, 0x4e475349, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, + 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000f0f, 0x505f5653, 0x5449534f, 0x004e4f49, + 0x4e47534f, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000001, 0x00000003, + 0x00000000, 0x0000000f, 0x505f5653, 0x5449534f, 0x004e4f49, 0x52444853, 0x00000098, 0x00020040, + 0x00000026, 0x05000061, 0x002010f2, 0x00000003, 0x00000000, 0x00000001, 0x0100185d, 0x0100285c, + 0x04000067, 0x001020f2, 0x00000000, 0x00000001, 0x0200005e, 0x00000003, 0x06000036, 0x001020f2, + 0x00000000, 0x00201e46, 0x00000000, 0x00000000, 0x01000013, 0x06000036, 0x001020f2, 0x00000000, + 0x00201e46, 0x00000001, 0x00000000, 0x01000013, 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, + 0x00000002, 0x00000000, 0x01000013, 0x01000009, 0x0100003e, 0x54415453, 0x00000074, 0x00000008, + 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000003, 0x00000005, + 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00001330, 0x00000000, 0x50003550, 0x00a50036, + 0x00000000, 0x37500000, 0x0000a500, 0x00000100, 0x00385000, 0x000000a5, 0x00000001, 0x00000204, + 0x43425844, 0x8e325e23, 0x0774e86e, 0xe636e15f, 0xd3f67abf, 0x00000001, 0x00000204, 0x00000005, + 0x00000034, 0x00000080, 0x000000b4, 0x000000e8, 0x00000188, 0x46454452, 0x00000044, 0x00000000, + 0x00000000, 0x00000000, 0x0000001c, 0x47530400, 0x00000100, 0x0000001c, 0x7263694d, 0x666f736f, + 0x52282074, 0x4c482029, 0x53204c53, 0x65646168, 0x6f432072, 0x6c69706d, 0x31207265, 0x00312e30, + 0x4e475349, 0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000001, 0x00000003, + 0x00000000, 0x00000f0f, 0x505f5653, 0x5449534f, 0x004e4f49, 0x4e47534f, 0x0000002c, 0x00000001, + 0x00000008, 0x00000020, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x0000000f, 0x505f5653, + 0x5449534f, 0x004e4f49, 0x52444853, 0x00000098, 0x00020040, 0x00000026, 0x05000061, 0x002010f2, + 0x00000003, 0x00000000, 0x00000001, 0x0100185d, 0x0100285c, 0x04000067, 0x001020f2, 0x00000000, + 0x00000001, 0x0200005e, 0x00000003, 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, 0x00000000, + 0x00000000, 0x01000013, 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, 0x00000001, 0x00000000, + 0x01000013, 0x06000036, 0x001020f2, 0x00000000, 0x00201e46, 0x00000002, 0x00000000, 0x01000013, + 0x01000009, 0x0100003e, 0x54415453, 0x00000074, 0x00000008, 0x00000000, 0x00000000, 0x00000002, + 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000003, 0x00000005, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x505f5653, 0x5449534f, 0x2e4e4f49, 0x15640079, 0x176c0000, 0x002d0000, 0x00110000, + 0x00000000, 0xffff0000, 0x0000ffff, 0x00000000, 0x00580000, 0x003c0000, 0x00000000, 0xffff0000, + 0x0000ffff, 0x00000000, 0x00860000, 0x006a0000, 0x00000000, 0xffff0000, 0x0000ffff, 0x00000000, + 0x00a50000, 0x00890000, 0x00000000, 0xffff0000, 0x00a7ffff, 0x02530000, 0x00000000, 0x03ff0000, + 0x003c0000, 0x00000000, 0xffff0000, 0x0401ffff, 0x00000000, 0x05a90000, 0x006a0000, 0x00000000, + 0xffff0000, 0x05abffff, 0x00000000, 0x07cf0000, 0x07b30000, 0x00000000, 0xffff0000, 0x07d4ffff, + 0x09dc0000, 0x00000000, 0x09fa0000, 0x00090000, 0x00000000, 0x0a010000, 0x00000000, 0x00000000, + 0x0a040000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00010000, 0x0a070000, 0x00060000, + 0x00000000, 0x00010000, 0x0a130000, 0x00080000, 0x00000000, 0x00010000, 0x0a1f0000, 0x0a2b0000, + 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00010000, 0x0a2e0000, 0x00060000, 0x00000000, + 0x00010000, 0x0a3a0000, 0x00080000, 0x00000000, 0x00010000, 0x0a460000, 0x0a520000, 0x00030000, + 0x00000000, 0x00070000, 0x00000000, 0x00070000, 0x0bfd0000, 0x00060000, 0x00000000, 0x00070000, + 0x0db10000, 0x00080000, 0x00000000, 0x00070000, 0x0fc10000, 0x0fc90000, 0x00030000, 0x00000000, + 0x00070000, 0x00000000, 0x00070000, 0x11740000, 0x00060000, 0x00000000, 0x00070000, 0x13280000, + 0x00080000, 0x00000000, 0x00070000, 0x15380000, 0x15400000, 0x00030000, 0x00000000, 0x00070000, + 0x00000000, 0x00020000, 0x00580000, 0x00060000, 0x00000000, 0x00020000, 0x002d0000, 0x00080000, + 0x00000000, 0x00020000, 0x00860000, 0x15430000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, + 0x00020000, 0x03ff0000, 0x00060000, 0x00000000, 0x00030000, 0x15460000, 0x00080000, 0x00000000, + 0x00020000, 0x05a90000, 0x154e0000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00020000, + 0x03ff0000, 0x00060000, 0x00000000, 0x00030000, 0x15510000, 0x00080000, 0x00000000, 0x00020000, + 0x05a90000, 0x15590000, 0x00030000, 0x00000000, 0x00070000, 0x00000000, 0x00020000, 0x03ff0000, + 0x00060000, 0x00000000, 0x00030000, 0x155c0000, 0x00080000, 0x00000000, 0x00070000, 0x177a0000, + 0x00000000, };
static void test_effect_local_shader(void) @@ -3705,7 +3706,7 @@ if (0) hr = gs->lpVtbl->GetShaderDesc(gs, 0, &shaderdesc); ok(hr == S_OK, "Failed to get shader description, hr %#x.\n", hr); ok(!shaderdesc.IsInline, "Unexpected inline flag.\n"); - ok(!strcmp(shaderdesc.SODecl, "SV_POSITION.x"), "Unexpected stream output declaration %s.\n", + ok(!strcmp(shaderdesc.SODecl, "SV_POSITION.x; SV_POSITION.gb"), "Unexpected stream output declaration %s.\n", shaderdesc.SODecl);
/* Signature description */ @@ -5972,7 +5973,8 @@ static void test_effect_optimize(void) ok(!shaderdesc.IsInline, "Unexpected inline flag.\n"); ok(!!shaderdesc.pBytecode, "Expected bytecode.\n"); ok(!!shaderdesc.BytecodeLength, "Unexpected bytecode length.\n"); - ok(!strcmp(shaderdesc.SODecl, "SV_POSITION.x"), "Unexpected stream output declaration %s.\n", shaderdesc.SODecl); + ok(!strcmp(shaderdesc.SODecl, "SV_POSITION.x; SV_POSITION.gb"), "Unexpected stream output declaration %s.\n", + shaderdesc.SODecl); ok(!!shaderdesc.NumInputSignatureEntries, "Unexpected input signature count.\n"); ok(!!shaderdesc.NumOutputSignatureEntries, "Unexpected output signature count.\n");
@@ -6048,7 +6050,7 @@ static void test_effect_shader_description(void) ok(hr == S_OK, "Failed to get shader description, hr %#x.\n", hr); ok(shaderdesc.BytecodeLength == 516, "Unexpected bytecode length %u.\n", shaderdesc.BytecodeLength); - ok(!strcmp(shaderdesc.SODecl, "SV_POSITION.x"), "Unexpected SO declaration %s.\n", + ok(!strcmp(shaderdesc.SODecl, "SV_POSITION.x; SV_POSITION.gb"), "Unexpected SO declaration %s.\n", wine_dbgstr_a(shaderdesc.SODecl));
effect->lpVtbl->Release(effect);