diff --git a/libs/vkd3d-shader/msl.c b/libs/vkd3d-shader/msl.c index 56ec9790c..b3e251eff 100644 --- a/libs/vkd3d-shader/msl.c +++ b/libs/vkd3d-shader/msl.c @@ -975,6 +975,7 @@ static void msl_handle_instruction(struct msl_generator *gen, const struct vkd3d msl_cast(gen, ins, "uint"); break; case VKD3DSIH_GEO: + case VKD3DSIH_IGE: msl_relop(gen, ins, ">="); break; case VKD3DSIH_IF: diff --git a/tests/hlsl/conditional.shader_test b/tests/hlsl/conditional.shader_test index d71c532cb..b302c8756 100644 --- a/tests/hlsl/conditional.shader_test +++ b/tests/hlsl/conditional.shader_test @@ -177,19 +177,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)