tests: Add visual test for eq instruction.

This commit is contained in:
Józef Kucia 2017-06-26 17:03:31 +02:00
parent 3178e25cb5
commit dc26657398

View File

@ -3691,6 +3691,29 @@ static void test_shader_instructions(void)
0x00000000, 0x0100003e,
};
static const D3D12_SHADER_BYTECODE ps_dot2 = {ps_dot2_code, sizeof(ps_dot2_code)};
static const DWORD ps_eq_code[] =
{
#if 0
float4 src0;
float4 src1;
void main(out float4 dst : SV_Target)
{
dst = (uint4)0;
if (src0.x == src1.x)
dst.x = asfloat(0xffffffff);
}
#endif
0x43425844, 0x7bce1728, 0xa7d5d0f0, 0xaef5bc00, 0x7bb6b161, 0x00000001, 0x000000e8, 0x00000003,
0x0000002c, 0x0000003c, 0x00000070, 0x4e475349, 0x00000008, 0x00000000, 0x00000008, 0x4e47534f,
0x0000002c, 0x00000001, 0x00000008, 0x00000020, 0x00000000, 0x00000000, 0x00000003, 0x00000000,
0x0000000f, 0x545f5653, 0x65677261, 0xabab0074, 0x58454853, 0x00000070, 0x00000050, 0x0000001c,
0x0100086a, 0x04000059, 0x00208e46, 0x00000000, 0x00000002, 0x03000065, 0x001020f2, 0x00000000,
0x09000018, 0x00102012, 0x00000000, 0x0020800a, 0x00000000, 0x00000000, 0x0020800a, 0x00000000,
0x00000001, 0x08000036, 0x001020e2, 0x00000000, 0x00004002, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x0100003e,
};
static const D3D12_SHADER_BYTECODE ps_eq = {ps_eq_code, sizeof(ps_eq_code)};
static const DWORD ps_ne_code[] =
{
#if 0
@ -3759,6 +3782,14 @@ static void test_shader_instructions(void)
{&ps_dot2, {{1.0f, 1.0f}, {1.0f, 1.0f}}, {{2.0f}}},
{&ps_dot2, {{1.0f, 1.0f}, {2.0f, 3.0f}}, {{5.0f}}},
{&ps_eq, {{0.0f}, {0.0f}}, {.u = {0xffffffff}}},
{&ps_eq, {{1.0f}, {0.0f}}, {.u = {0x00000000}}},
{&ps_eq, {{0.0f}, {1.0f}}, {.u = {0x00000000}}},
{&ps_eq, {{1.0f}, {1.0f}}, {.u = {0xffffffff}}},
{&ps_eq, {{0.0f}, {NAN}}, {.u = {0x00000000}}},
{&ps_eq, {{1.0f}, {NAN}}, {.u = {0x00000000}}},
{&ps_eq, { {NAN}, {NAN}}, {.u = {0x00000000}}},
{&ps_ne, {{0.0f}, {0.0f}}, {.u = {0x00000000}}},
{&ps_ne, {{1.0f}, {0.0f}}, {.u = {0xffffffff}}},
{&ps_ne, {{0.0f}, {1.0f}}, {.u = {0xffffffff}}},