diff options
Diffstat (limited to 'src/shader_recompiler/backend/glasm')
-rw-r--r-- | src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp index c7d7d5fef..8d2b9d569 100644 --- a/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp +++ b/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp @@ -406,9 +406,15 @@ void EmitInvocationInfo(EmitContext& ctx, IR::Inst& inst) { case Stage::TessellationEval: ctx.Add("SHL.U {}.x,primitive.vertexcount,16;", inst); break; + case Stage::Fragment: + // Return sample mask in upper 16 bits + ctx.Add("SHL.U {}.x,fragment.samplemask,16;", inst); + break; + case Stage::Compute: default: - LOG_WARNING(Shader, "(STUBBED) called"); + // Return standard format (0x00ff0000) ctx.Add("MOV.S {}.x,0x00ff0000;", inst); + break; } } |