diff --git a/libs/vkd3d-shader/msl.c b/libs/vkd3d-shader/msl.c index b3e251eff..14e446caf 100644 --- a/libs/vkd3d-shader/msl.c +++ b/libs/vkd3d-shader/msl.c @@ -988,6 +988,7 @@ static void msl_handle_instruction(struct msl_generator *gen, const struct vkd3d case VKD3DSIH_USHR: msl_binop(gen, ins, ">>"); break; + case VKD3DSIH_ILT: case VKD3DSIH_LTO: msl_relop(gen, ins, "<"); break; diff --git a/tests/hlsl/conditional.shader_test b/tests/hlsl/conditional.shader_test index b302c8756..039c74ab3 100644 --- a/tests/hlsl/conditional.shader_test +++ b/tests/hlsl/conditional.shader_test @@ -145,19 +145,19 @@ if(sm<4) uniform 0 float 8 if(sm<4) uniform 4 float 9 if(sm>=4) uniform 0 int 8 if(sm>=4) uniform 1 int 9 -todo(msl) draw quad +draw quad probe (0, 0) rgba (-1.0, -1.0, -1.0, -1.0) if(sm<4) uniform 0 float -3 if(sm<4) uniform 4 float -4 if(sm>=4) uniform 0 int -3 if(sm>=4) uniform 1 int -4 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0, 1.0, 1.0, 1.0) if(sm<4) uniform 0 float 7 if(sm<4) uniform 4 float 7 if(sm>=4) uniform 0 int 7 if(sm>=4) uniform 1 int 7 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0, 1.0, 1.0, 1.0) diff --git a/tests/hlsl/logic-operations.shader_test b/tests/hlsl/logic-operations.shader_test index 0aa7fc87e..e6b65b184 100644 --- a/tests/hlsl/logic-operations.shader_test +++ b/tests/hlsl/logic-operations.shader_test @@ -171,11 +171,11 @@ if(sm<4) uniform 0 float 5 if(sm<4) uniform 4 float 0 if(sm>=4) uniform 0 int 5 if(sm>=4) uniform 1 int 0 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0, 1.0, 0.0, 1.0) if(sm<4) uniform 0 float -1 if(sm<4) uniform 4 float 3 if(sm>=4) uniform 0 int -1 if(sm>=4) uniform 1 int 3 -todo(msl) draw quad +draw quad probe (0, 0) rgba (0.0, 1.0, 0.0, 0.0) diff --git a/tests/hlsl/vertex-shader-ops.shader_test b/tests/hlsl/vertex-shader-ops.shader_test index 2bace612d..0bbbf7063 100644 --- a/tests/hlsl/vertex-shader-ops.shader_test +++ b/tests/hlsl/vertex-shader-ops.shader_test @@ -49,12 +49,12 @@ void main(out float4 res : COLOR1, in float4 pos : position, out float4 out_pos if(sm<4) uniform 0 float 3 if(sm<4) uniform 4 float 4 if(sm>=4) uniform 0 int4 3 4 0 0 -todo(msl) draw quad +draw quad probe (0, 0) rgba (0.0, 1.0, 0.0, 1.0) if(sm<4) uniform 0 float -2 if(sm<4) uniform 4 float -2 if(sm>=4) uniform 0 int4 -2 -2 0 0 -todo(msl) draw quad +draw quad probe (0, 0) rgba (1.0, 0.0, 0.0, 1.0)