summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/glsl/emit_glsl_instructions.h
diff options
context:
space:
mode:
authorGravatar ameerj2021-05-27 00:26:16 -0400
committerGravatar ameerj2021-07-22 21:51:36 -0400
commited14d31f663e126a8f9fe0ea8abff8e27c46248b (patch)
tree6bfe4bec1eda9960aef7c80dfa5926ab97984bd3 /src/shader_recompiler/backend/glsl/emit_glsl_instructions.h
parentglsl: textures wip (diff)
downloadyuzu-ed14d31f663e126a8f9fe0ea8abff8e27c46248b.tar.gz
yuzu-ed14d31f663e126a8f9fe0ea8abff8e27c46248b.tar.xz
yuzu-ed14d31f663e126a8f9fe0ea8abff8e27c46248b.zip
glsl: Fix non-immediate buffer access
and many other misc implementations
Diffstat (limited to 'src/shader_recompiler/backend/glsl/emit_glsl_instructions.h')
-rw-r--r--src/shader_recompiler/backend/glsl/emit_glsl_instructions.h28
1 files changed, 16 insertions, 12 deletions
diff --git a/src/shader_recompiler/backend/glsl/emit_glsl_instructions.h b/src/shader_recompiler/backend/glsl/emit_glsl_instructions.h
index c9b53bae2..295b7a8c4 100644
--- a/src/shader_recompiler/backend/glsl/emit_glsl_instructions.h
+++ b/src/shader_recompiler/backend/glsl/emit_glsl_instructions.h
@@ -60,7 +60,8 @@ void EmitGetCbufU32(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding,
60 const IR::Value& offset); 60 const IR::Value& offset);
61void EmitGetCbufF32(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding, 61void EmitGetCbufF32(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding,
62 const IR::Value& offset); 62 const IR::Value& offset);
63void EmitGetCbufU32x2(EmitContext& ctx, const IR::Value& binding, const IR::Value& offset); 63void EmitGetCbufU32x2(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding,
64 const IR::Value& offset);
64void EmitGetAttribute(EmitContext& ctx, IR::Inst& inst, IR::Attribute attr, 65void EmitGetAttribute(EmitContext& ctx, IR::Inst& inst, IR::Attribute attr,
65 std::string_view vertex); 66 std::string_view vertex);
66void EmitSetAttribute(EmitContext& ctx, IR::Attribute attr, std::string_view value, 67void EmitSetAttribute(EmitContext& ctx, IR::Attribute attr, std::string_view value,
@@ -116,7 +117,8 @@ void EmitLoadStorage32(EmitContext& ctx, IR::Inst& inst, const IR::Value& bindin
116 const IR::Value& offset); 117 const IR::Value& offset);
117void EmitLoadStorage64(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding, 118void EmitLoadStorage64(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding,
118 const IR::Value& offset); 119 const IR::Value& offset);
119void EmitLoadStorage128(EmitContext& ctx, const IR::Value& binding, const IR::Value& offset); 120void EmitLoadStorage128(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding,
121 const IR::Value& offset);
120void EmitWriteStorageU8(EmitContext& ctx, const IR::Value& binding, const IR::Value& offset, 122void EmitWriteStorageU8(EmitContext& ctx, const IR::Value& binding, const IR::Value& offset,
121 std::string_view value); 123 std::string_view value);
122void EmitWriteStorageS8(EmitContext& ctx, const IR::Value& binding, const IR::Value& offset, 124void EmitWriteStorageS8(EmitContext& ctx, const IR::Value& binding, const IR::Value& offset,
@@ -145,14 +147,16 @@ void EmitWriteSharedU64(EmitContext& ctx, std::string_view offset, std::string_v
145void EmitWriteSharedU128(EmitContext& ctx, std::string_view offset, std::string_view value); 147void EmitWriteSharedU128(EmitContext& ctx, std::string_view offset, std::string_view value);
146void EmitCompositeConstructU32x2(EmitContext& ctx, IR::Inst& inst, std::string_view e1, 148void EmitCompositeConstructU32x2(EmitContext& ctx, IR::Inst& inst, std::string_view e1,
147 std::string_view e2); 149 std::string_view e2);
148void EmitCompositeConstructU32x3(EmitContext& ctx, std::string_view e1, std::string_view e2, 150void EmitCompositeConstructU32x3(EmitContext& ctx, IR::Inst& inst, std::string_view e1,
149 std::string_view e3); 151 std::string_view e2, std::string_view e3);
150void EmitCompositeConstructU32x4(EmitContext& ctx, std::string_view e1, std::string_view e2, 152void EmitCompositeConstructU32x4(EmitContext& ctx, IR::Inst& inst, std::string_view e1,
151 std::string_view e3, std::string_view e4); 153 std::string_view e2, std::string_view e3, std::string_view e4);
152void EmitCompositeExtractU32x2(EmitContext& ctx, IR::Inst& inst, std::string_view composite, 154void EmitCompositeExtractU32x2(EmitContext& ctx, IR::Inst& inst, std::string_view composite,
153 u32 index); 155 u32 index);
154void EmitCompositeExtractU32x3(EmitContext& ctx, std::string_view composite, u32 index); 156void EmitCompositeExtractU32x3(EmitContext& ctx, IR::Inst& inst, std::string_view composite,
155void EmitCompositeExtractU32x4(EmitContext& ctx, std::string_view composite, u32 index); 157 u32 index);
158void EmitCompositeExtractU32x4(EmitContext& ctx, IR::Inst& inst, std::string_view composite,
159 u32 index);
156void EmitCompositeInsertU32x2(EmitContext& ctx, std::string_view composite, std::string_view object, 160void EmitCompositeInsertU32x2(EmitContext& ctx, std::string_view composite, std::string_view object,
157 u32 index); 161 u32 index);
158void EmitCompositeInsertU32x3(EmitContext& ctx, std::string_view composite, std::string_view object, 162void EmitCompositeInsertU32x3(EmitContext& ctx, std::string_view composite, std::string_view object,
@@ -175,10 +179,10 @@ void EmitCompositeInsertF16x4(EmitContext& ctx, std::string_view composite, std:
175 u32 index); 179 u32 index);
176void EmitCompositeConstructF32x2(EmitContext& ctx, IR::Inst& inst, std::string_view e1, 180void EmitCompositeConstructF32x2(EmitContext& ctx, IR::Inst& inst, std::string_view e1,
177 std::string_view e2); 181 std::string_view e2);
178void EmitCompositeConstructF32x3(EmitContext& ctx, std::string_view e1, std::string_view e2, 182void EmitCompositeConstructF32x3(EmitContext& ctx, IR::Inst& inst, std::string_view e1,
179 std::string_view e3); 183 std::string_view e2, std::string_view e3);
180void EmitCompositeConstructF32x4(EmitContext& ctx, std::string_view e1, std::string_view e2, 184void EmitCompositeConstructF32x4(EmitContext& ctx, IR::Inst& inst, std::string_view e1,
181 std::string_view e3, std::string_view e4); 185 std::string_view e2, std::string_view e3, std::string_view e4);
182void EmitCompositeExtractF32x2(EmitContext& ctx, IR::Inst& inst, std::string_view composite, 186void EmitCompositeExtractF32x2(EmitContext& ctx, IR::Inst& inst, std::string_view composite,
183 u32 index); 187 u32 index);
184void EmitCompositeExtractF32x3(EmitContext& ctx, IR::Inst& inst, std::string_view composite, 188void EmitCompositeExtractF32x3(EmitContext& ctx, IR::Inst& inst, std::string_view composite,