summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_spirv.h
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2021-04-15 22:46:11 -0300
committerGravatar ameerj2021-07-22 21:51:27 -0400
commit183855e396cc6918d36fbf3e38ea426e934b4e3e (patch)
treea665794753520c09a1d34d8a086352894ec1cb72 /src/shader_recompiler/backend/spirv/emit_spirv.h
parentshader: Mark atomic instructions as writes (diff)
downloadyuzu-183855e396cc6918d36fbf3e38ea426e934b4e3e.tar.gz
yuzu-183855e396cc6918d36fbf3e38ea426e934b4e3e.tar.xz
yuzu-183855e396cc6918d36fbf3e38ea426e934b4e3e.zip
shader: Implement tessellation shaders, polygon mode and invocation id
Diffstat (limited to 'src/shader_recompiler/backend/spirv/emit_spirv.h')
-rw-r--r--src/shader_recompiler/backend/spirv/emit_spirv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_spirv.h b/src/shader_recompiler/backend/spirv/emit_spirv.h
index 55b2edba0..8caf30f1b 100644
--- a/src/shader_recompiler/backend/spirv/emit_spirv.h
+++ b/src/shader_recompiler/backend/spirv/emit_spirv.h
@@ -55,6 +55,8 @@ Id EmitGetAttribute(EmitContext& ctx, IR::Attribute attr, Id vertex);
55void EmitSetAttribute(EmitContext& ctx, IR::Attribute attr, Id value, Id vertex); 55void EmitSetAttribute(EmitContext& ctx, IR::Attribute attr, Id value, Id vertex);
56Id EmitGetAttributeIndexed(EmitContext& ctx, Id offset, Id vertex); 56Id EmitGetAttributeIndexed(EmitContext& ctx, Id offset, Id vertex);
57void EmitSetAttributeIndexed(EmitContext& ctx, Id offset, Id value, Id vertex); 57void EmitSetAttributeIndexed(EmitContext& ctx, Id offset, Id value, Id vertex);
58Id EmitGetPatch(EmitContext& ctx, IR::Patch patch);
59void EmitSetPatch(EmitContext& ctx, IR::Patch patch, Id value);
58void EmitSetFragColor(EmitContext& ctx, u32 index, u32 component, Id value); 60void EmitSetFragColor(EmitContext& ctx, u32 index, u32 component, Id value);
59void EmitSetFragDepth(EmitContext& ctx, Id value); 61void EmitSetFragDepth(EmitContext& ctx, Id value);
60void EmitGetZFlag(EmitContext& ctx); 62void EmitGetZFlag(EmitContext& ctx);
@@ -67,6 +69,7 @@ void EmitSetCFlag(EmitContext& ctx);
67void EmitSetOFlag(EmitContext& ctx); 69void EmitSetOFlag(EmitContext& ctx);
68Id EmitWorkgroupId(EmitContext& ctx); 70Id EmitWorkgroupId(EmitContext& ctx);
69Id EmitLocalInvocationId(EmitContext& ctx); 71Id EmitLocalInvocationId(EmitContext& ctx);
72Id EmitInvocationId(EmitContext& ctx);
70Id EmitIsHelperInvocation(EmitContext& ctx); 73Id EmitIsHelperInvocation(EmitContext& ctx);
71Id EmitLoadLocal(EmitContext& ctx, Id word_offset); 74Id EmitLoadLocal(EmitContext& ctx, Id word_offset);
72void EmitWriteLocal(EmitContext& ctx, Id word_offset, Id value); 75void EmitWriteLocal(EmitContext& ctx, Id word_offset, Id value);