d3d10/tests: Add a test for log2/log10/exp2 functions in expressions.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
This commit is contained in:
Nikolay Sivov 2023-10-06 13:54:54 +02:00 committed by Alexandre Julliard
parent a1830c03a5
commit fe63d304be

View file

@ -8336,13 +8336,17 @@ technique10 tech
{
SetBlendState( NULL, float4(g_var3.x >> g_var3.y, g_var3.z << g_var3.w, g_var4.x >> g_var4.y, 0), 0 );
}
pass p36
{
SetBlendState( NULL, float4(log2(g_var.x), log10(g_var.y), exp2(g_var.z), 0.0), 0 );
}
}
#endif
static DWORD fx_test_value_expression[] =
{
0x43425844, 0x674c633a, 0xcb04afa1, 0x39ca5bbb, 0xba485872, 0x00000001, 0x00004780, 0x00000001,
0x00000024, 0x30315846, 0x00004754, 0xfeff1001, 0x00000001, 0x00000004, 0x00000001, 0x00000000,
0x00000000, 0x00000000, 0x00000001, 0x00003ddc, 0x00000000, 0x00000000, 0x00000001, 0x00000000,
0x43425844, 0xf55b96f2, 0x76722813, 0x530fae3e, 0x4cd9c847, 0x00000001, 0x00004964, 0x00000001,
0x00000024, 0x30315846, 0x00004938, 0xfeff1001, 0x00000001, 0x00000004, 0x00000001, 0x00000000,
0x00000000, 0x00000000, 0x00000001, 0x00003f84, 0x00000000, 0x00000000, 0x00000001, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x6f6c4724,
0x736c6162, 0x6f6c6600, 0x00347461, 0x0000000d, 0x00000001, 0x00000000, 0x00000010, 0x00000010,
0x00000010, 0x0000210a, 0x61765f67, 0x5f670072, 0x32726176, 0x746e6900, 0x003d0034, 0x00010000,
@ -8838,80 +8842,96 @@ static DWORD fx_test_value_expression[] =
0x00000003, 0x00000000, 0x00000007, 0x00000000, 0x13000001, 0x00000001, 0x00000000, 0x00000007,
0x00000000, 0x00000000, 0x00000004, 0x00000001, 0x10000001, 0x00000001, 0x00000000, 0x00000001,
0x00000000, 0x00000000, 0x00000004, 0x00000003, 0xf0f0f0f0, 0x0f0f0f0f, 0x0000ffff, 0x00000001,
0x00000002, 0x00000000, 0x00000001, 0x00000002, 0x00000000, 0x00000004, 0x00000040, 0x00000000,
0x00000004, 0xffffffff, 0x00000000, 0x00000030, 0x00000014, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000036, 0x00000014, 0x00000000, 0x00000010, 0x00000000, 0x00000000,
0x00000000, 0x0000005e, 0x00000042, 0x00000000, 0x00000020, 0x00000000, 0x00000000, 0x00000000,
0x00000087, 0x0000006b, 0x00000000, 0x00000030, 0x00000000, 0x00000000, 0x00000000, 0x000000bc,
0x000000a0, 0x00000000, 0xffffffff, 0x00000001, 0x00000019, 0x00000000, 0x00000006, 0x000000c5,
0x00000000, 0x000001b5, 0x00000024, 0x00000000, 0x000001ba, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x000001bd, 0x0000000b, 0x00000000, 0x00000001, 0x00000405, 0x00000002,
0x00000000, 0x00000001, 0x00000411, 0x0000041d, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00000420, 0x0000000b, 0x00000000, 0x00000001, 0x00000574, 0x00000002, 0x00000000,
0x00000001, 0x00000580, 0x0000058c, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x0000058f, 0x0000000b, 0x00000000, 0x00000001, 0x000007bf, 0x00000002, 0x00000000, 0x00000001,
0x000007cb, 0x000007d7, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000007da,
0x0000000b, 0x00000000, 0x00000001, 0x00000902, 0x00000002, 0x00000000, 0x00000001, 0x0000090e,
0x0000091a, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x0000091d, 0x0000000b,
0x00000000, 0x00000001, 0x00000a45, 0x00000002, 0x00000000, 0x00000001, 0x00000a51, 0x00000a5d,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00000a60, 0x0000000b, 0x00000000,
0x00000001, 0x00000b5c, 0x00000002, 0x00000000, 0x00000001, 0x00000b68, 0x00000b74, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00000b77, 0x0000000b, 0x00000000, 0x00000001,
0x00000cc7, 0x00000002, 0x00000000, 0x00000001, 0x00000cd3, 0x00000cdf, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00000ce2, 0x0000000b, 0x00000000, 0x00000001, 0x00000dd2,
0x00000002, 0x00000000, 0x00000001, 0x00000dde, 0x00000dea, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x00000ded, 0x0000000b, 0x00000000, 0x00000001, 0x00000fe9, 0x00000002,
0x00000000, 0x00000001, 0x00000ff5, 0x00001001, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00001004, 0x0000000b, 0x00000000, 0x00000001, 0x00001180, 0x00000002, 0x00000000,
0x00000001, 0x0000118c, 0x00001198, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x0000119c, 0x0000000b, 0x00000000, 0x00000001, 0x0000136c, 0x00000002, 0x00000000, 0x00000001,
0x00001378, 0x00001384, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00001388,
0x0000000b, 0x00000000, 0x00000001, 0x00001504, 0x00000002, 0x00000000, 0x00000001, 0x00001510,
0x0000151c, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00001520, 0x0000000b,
0x00000000, 0x00000001, 0x0000169c, 0x00000002, 0x00000000, 0x00000001, 0x000016a8, 0x000016b4,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000016b8, 0x0000000b, 0x00000000,
0x00000001, 0x00001834, 0x00000002, 0x00000000, 0x00000001, 0x00001840, 0x0000184c, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00001850, 0x0000000b, 0x00000000, 0x00000001,
0x000019cc, 0x00000002, 0x00000000, 0x00000001, 0x000019d8, 0x000019e4, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x000019e8, 0x0000000b, 0x00000000, 0x00000001, 0x00001b38,
0x00000002, 0x00000000, 0x00000001, 0x00001b44, 0x00001b50, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x00001b54, 0x0000000b, 0x00000000, 0x00000001, 0x00001ca4, 0x00000002,
0x00000000, 0x00000001, 0x00001cb0, 0x00001cbc, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00001cc0, 0x0000000b, 0x00000000, 0x00000001, 0x00001e10, 0x00000002, 0x00000000,
0x00000001, 0x00001e1c, 0x00001e28, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x00001e2c, 0x0000000b, 0x00000000, 0x00000001, 0x00001fac, 0x00000002, 0x00000000, 0x00000001,
0x00001fb8, 0x00001fc4, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00001fc8,
0x0000000b, 0x00000000, 0x00000001, 0x0000229c, 0x00000002, 0x00000000, 0x00000001, 0x000022a8,
0x000022b4, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000022b8, 0x0000000b,
0x00000000, 0x00000001, 0x0000259c, 0x00000002, 0x00000000, 0x00000001, 0x000025a8, 0x000025b4,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000025b8, 0x0000000b, 0x00000000,
0x00000001, 0x00002808, 0x00000002, 0x00000000, 0x00000001, 0x00002814, 0x00002820, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00002824, 0x0000000b, 0x00000000, 0x00000001,
0x00002914, 0x00000002, 0x00000000, 0x00000001, 0x00002920, 0x0000292c, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00002930, 0x0000000b, 0x00000000, 0x00000001, 0x00002a20,
0x00000002, 0x00000000, 0x00000001, 0x00002a2c, 0x00002a38, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x00002a3c, 0x0000000b, 0x00000000, 0x00000001, 0x00002be4, 0x00000002,
0x00000000, 0x00000001, 0x00002bf0, 0x00002bfc, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00002c00, 0x0000000b, 0x00000000, 0x00000001, 0x00002da8, 0x00000002, 0x00000000,
0x00000001, 0x00002db4, 0x00002dc0, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x00002dc4, 0x0000000b, 0x00000000, 0x00000001, 0x00002fb4, 0x00000002, 0x00000000, 0x00000001,
0x00002fc0, 0x00002fcc, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00002fd0,
0x0000000b, 0x00000000, 0x00000001, 0x000031a8, 0x00000002, 0x00000000, 0x00000001, 0x000031b4,
0x000031c0, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000031c4, 0x0000000b,
0x00000000, 0x00000001, 0x00003340, 0x00000002, 0x00000000, 0x00000001, 0x0000334c, 0x00003358,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x0000335c, 0x0000000b, 0x00000000,
0x00000001, 0x0000344c, 0x00000002, 0x00000000, 0x00000001, 0x00003458, 0x00003464, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00003468, 0x0000000b, 0x00000000, 0x00000001,
0x000035b8, 0x00000002, 0x00000000, 0x00000001, 0x000035c4, 0x000035d0, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x000035d4, 0x0000000b, 0x00000000, 0x00000001, 0x00003760,
0x00000002, 0x00000000, 0x00000001, 0x0000376c, 0x00003778, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x0000377c, 0x0000000b, 0x00000000, 0x00000001, 0x00003908, 0x00000002,
0x00000000, 0x00000001, 0x00003914, 0x00003920, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00003924, 0x0000000b, 0x00000000, 0x00000001, 0x00003a34, 0x00000002, 0x00000000,
0x00000001, 0x00003a40, 0x00003a4c, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x00003a50, 0x0000000b, 0x00000000, 0x00000001, 0x00003b98, 0x00000002, 0x00000000, 0x00000001,
0x00003ba4, 0x00003bb0, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00003bb4,
0x0000000b, 0x00000000, 0x00000001, 0x00003dc4, 0x00000002, 0x00000000, 0x00000001, 0x00003dd0,
0x00000002, 0x00000000, 0x00000001, 0x00000002, 0x00000000, 0x00363370, 0x00000188, 0x43425844,
0x0fa50e48, 0x77568ea3, 0x5a5f1569, 0x9a0b8508, 0x00000001, 0x00000188, 0x00000003, 0x0000002c,
0x000000a8, 0x000000c4, 0x42415443, 0x00000074, 0x0000001c, 0x0000004b, 0x46580400, 0x00000001,
0x0000001c, 0x00000100, 0x00000048, 0x00000030, 0x00000002, 0x00000001, 0x00000038, 0x00000000,
0x61765f67, 0xabab0072, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 0x4d007874, 0x6f726369,
0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 0x30312072,
0xab00312e, 0x34494c43, 0x00000014, 0x00000004, 0x3e9a209b, 0x00000000, 0x00000000, 0x00000000,
0x434c5846, 0x000000bc, 0x00000005, 0x10600001, 0x00000001, 0x00000000, 0x00000002, 0x00000000,
0x00000000, 0x00000004, 0x00000000, 0x10600001, 0x00000001, 0x00000000, 0x00000002, 0x00000001,
0x00000000, 0x00000007, 0x00000000, 0x20500001, 0x00000002, 0x00000000, 0x00000007, 0x00000000,
0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000004, 0x00000001, 0x10500001, 0x00000001,
0x00000000, 0x00000002, 0x00000002, 0x00000000, 0x00000004, 0x00000002, 0x10000001, 0x00000001,
0x00000000, 0x00000001, 0x00000001, 0x00000000, 0x00000004, 0x00000003, 0xf0f0f0f0, 0x0f0f0f0f,
0x0000ffff, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000002, 0x00000000, 0x00000004,
0x00000040, 0x00000000, 0x00000004, 0xffffffff, 0x00000000, 0x00000030, 0x00000014, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000036, 0x00000014, 0x00000000, 0x00000010,
0x00000000, 0x00000000, 0x00000000, 0x0000005e, 0x00000042, 0x00000000, 0x00000020, 0x00000000,
0x00000000, 0x00000000, 0x00000087, 0x0000006b, 0x00000000, 0x00000030, 0x00000000, 0x00000000,
0x00000000, 0x000000bc, 0x000000a0, 0x00000000, 0xffffffff, 0x00000001, 0x00000019, 0x00000000,
0x00000006, 0x000000c5, 0x00000000, 0x000001b5, 0x00000025, 0x00000000, 0x000001ba, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000001bd, 0x0000000b, 0x00000000, 0x00000001,
0x00000405, 0x00000002, 0x00000000, 0x00000001, 0x00000411, 0x0000041d, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00000420, 0x0000000b, 0x00000000, 0x00000001, 0x00000574,
0x00000002, 0x00000000, 0x00000001, 0x00000580, 0x0000058c, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x0000058f, 0x0000000b, 0x00000000, 0x00000001, 0x000007bf, 0x00000002,
0x00000000, 0x00000001, 0x000007cb, 0x000007d7, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x000007da, 0x0000000b, 0x00000000, 0x00000001, 0x00000902, 0x00000002, 0x00000000,
0x00000001, 0x0000090e, 0x0000091a, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x0000091d, 0x0000000b, 0x00000000, 0x00000001, 0x00000a45, 0x00000002, 0x00000000, 0x00000001,
0x00000a51, 0x00000a5d, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00000a60,
0x0000000b, 0x00000000, 0x00000001, 0x00000b5c, 0x00000002, 0x00000000, 0x00000001, 0x00000b68,
0x00000b74, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00000b77, 0x0000000b,
0x00000000, 0x00000001, 0x00000cc7, 0x00000002, 0x00000000, 0x00000001, 0x00000cd3, 0x00000cdf,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00000ce2, 0x0000000b, 0x00000000,
0x00000001, 0x00000dd2, 0x00000002, 0x00000000, 0x00000001, 0x00000dde, 0x00000dea, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00000ded, 0x0000000b, 0x00000000, 0x00000001,
0x00000fe9, 0x00000002, 0x00000000, 0x00000001, 0x00000ff5, 0x00001001, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00001004, 0x0000000b, 0x00000000, 0x00000001, 0x00001180,
0x00000002, 0x00000000, 0x00000001, 0x0000118c, 0x00001198, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x0000119c, 0x0000000b, 0x00000000, 0x00000001, 0x0000136c, 0x00000002,
0x00000000, 0x00000001, 0x00001378, 0x00001384, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00001388, 0x0000000b, 0x00000000, 0x00000001, 0x00001504, 0x00000002, 0x00000000,
0x00000001, 0x00001510, 0x0000151c, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x00001520, 0x0000000b, 0x00000000, 0x00000001, 0x0000169c, 0x00000002, 0x00000000, 0x00000001,
0x000016a8, 0x000016b4, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000016b8,
0x0000000b, 0x00000000, 0x00000001, 0x00001834, 0x00000002, 0x00000000, 0x00000001, 0x00001840,
0x0000184c, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00001850, 0x0000000b,
0x00000000, 0x00000001, 0x000019cc, 0x00000002, 0x00000000, 0x00000001, 0x000019d8, 0x000019e4,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000019e8, 0x0000000b, 0x00000000,
0x00000001, 0x00001b38, 0x00000002, 0x00000000, 0x00000001, 0x00001b44, 0x00001b50, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00001b54, 0x0000000b, 0x00000000, 0x00000001,
0x00001ca4, 0x00000002, 0x00000000, 0x00000001, 0x00001cb0, 0x00001cbc, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00001cc0, 0x0000000b, 0x00000000, 0x00000001, 0x00001e10,
0x00000002, 0x00000000, 0x00000001, 0x00001e1c, 0x00001e28, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x00001e2c, 0x0000000b, 0x00000000, 0x00000001, 0x00001fac, 0x00000002,
0x00000000, 0x00000001, 0x00001fb8, 0x00001fc4, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00001fc8, 0x0000000b, 0x00000000, 0x00000001, 0x0000229c, 0x00000002, 0x00000000,
0x00000001, 0x000022a8, 0x000022b4, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x000022b8, 0x0000000b, 0x00000000, 0x00000001, 0x0000259c, 0x00000002, 0x00000000, 0x00000001,
0x000025a8, 0x000025b4, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000025b8,
0x0000000b, 0x00000000, 0x00000001, 0x00002808, 0x00000002, 0x00000000, 0x00000001, 0x00002814,
0x00002820, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00002824, 0x0000000b,
0x00000000, 0x00000001, 0x00002914, 0x00000002, 0x00000000, 0x00000001, 0x00002920, 0x0000292c,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00002930, 0x0000000b, 0x00000000,
0x00000001, 0x00002a20, 0x00000002, 0x00000000, 0x00000001, 0x00002a2c, 0x00002a38, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00002a3c, 0x0000000b, 0x00000000, 0x00000001,
0x00002be4, 0x00000002, 0x00000000, 0x00000001, 0x00002bf0, 0x00002bfc, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00002c00, 0x0000000b, 0x00000000, 0x00000001, 0x00002da8,
0x00000002, 0x00000000, 0x00000001, 0x00002db4, 0x00002dc0, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x00002dc4, 0x0000000b, 0x00000000, 0x00000001, 0x00002fb4, 0x00000002,
0x00000000, 0x00000001, 0x00002fc0, 0x00002fcc, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00002fd0, 0x0000000b, 0x00000000, 0x00000001, 0x000031a8, 0x00000002, 0x00000000,
0x00000001, 0x000031b4, 0x000031c0, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x000031c4, 0x0000000b, 0x00000000, 0x00000001, 0x00003340, 0x00000002, 0x00000000, 0x00000001,
0x0000334c, 0x00003358, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x0000335c,
0x0000000b, 0x00000000, 0x00000001, 0x0000344c, 0x00000002, 0x00000000, 0x00000001, 0x00003458,
0x00003464, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x00003468, 0x0000000b,
0x00000000, 0x00000001, 0x000035b8, 0x00000002, 0x00000000, 0x00000001, 0x000035c4, 0x000035d0,
0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x000035d4, 0x0000000b, 0x00000000,
0x00000001, 0x00003760, 0x00000002, 0x00000000, 0x00000001, 0x0000376c, 0x00003778, 0x00000003,
0x00000000, 0x0000000a, 0x00000000, 0x00000006, 0x0000377c, 0x0000000b, 0x00000000, 0x00000001,
0x00003908, 0x00000002, 0x00000000, 0x00000001, 0x00003914, 0x00003920, 0x00000003, 0x00000000,
0x0000000a, 0x00000000, 0x00000006, 0x00003924, 0x0000000b, 0x00000000, 0x00000001, 0x00003a34,
0x00000002, 0x00000000, 0x00000001, 0x00003a40, 0x00003a4c, 0x00000003, 0x00000000, 0x0000000a,
0x00000000, 0x00000006, 0x00003a50, 0x0000000b, 0x00000000, 0x00000001, 0x00003b98, 0x00000002,
0x00000000, 0x00000001, 0x00003ba4, 0x00003bb0, 0x00000003, 0x00000000, 0x0000000a, 0x00000000,
0x00000006, 0x00003bb4, 0x0000000b, 0x00000000, 0x00000001, 0x00003dc4, 0x00000002, 0x00000000,
0x00000001, 0x00003dd0, 0x00003ddc, 0x00000003, 0x00000000, 0x0000000a, 0x00000000, 0x00000006,
0x00003de0, 0x0000000b, 0x00000000, 0x00000001, 0x00003f6c, 0x00000002, 0x00000000, 0x00000001,
0x00003f78,
};
static float get_frc(float v)
@ -9749,6 +9769,25 @@ static void test_effect_value_expression(void)
ok(blend_factor[3] == 0.0f, "Got unexpected blend_factor[3] %.8e.\n", blend_factor[3]);
ok(!sample_mask, "Got unexpected sample_mask %#x.\n", sample_mask);
/* log2(), log10(), exp2() */
pass = t->lpVtbl->GetPassByName(t, "p36");
ok(pass->lpVtbl->IsValid(pass), "Expected valid pass.\n");
set_vec4(f, 4.0f, 9.0f, 3.0f, 0.0f);
hr = g_var->lpVtbl->SetFloatVector(g_var, f);
ok(hr == S_OK, "Unexpected hr %#lx.\n", hr);
hr = pass->lpVtbl->Apply(pass, 0);
ok(hr == S_OK, "Got unexpected hr %#lx.\n", hr);
ID3D10Device_OMGetBlendState(device, &blend_state, blend_factor, &sample_mask);
ok(!blend_state, "Unexpected blend state %p.\n", blend_state);
ok(blend_factor[0] == logf(f[0]) / logf(2.0f), "Got unexpected blend_factor[0] %.8e.\n", blend_factor[0]);
ok(blend_factor[1] == log10f(f[1]), "Got unexpected blend_factor[1] %.8e.\n", blend_factor[1]);
ok(blend_factor[2] == exp2f(f[2]), "Got unexpected blend_factor[2] %.8e.\n", blend_factor[2]);
ok(blend_factor[3] == 0.0f, "Got unexpected blend_factor[3] %.8e.\n", blend_factor[3]);
ok(!sample_mask, "Got unexpected sample_mask %#x.\n", sample_mask);
effect->lpVtbl->Release(effect);
refcount = ID3D10Device_Release(device);