vkd3d-shader/hlsl: Support non-static unroll limits.

Enables the following pixel shader to compile:

float4 fun(uint x, uint y)
{
    int i;
    [unroll(x + y)]
    for (i = 0; i < 8; ++i);

    return float4(i, 0, 0, 0);
}

float4 main() : sv_target
{
    int a = 1;
    return fun(a, a);
}

Needed for the game DCS World.

Merge request reports

Loading