diff options
| author | 2021-07-25 22:04:53 -0300 | |
|---|---|---|
| committer | 2021-11-16 22:11:28 +0100 | |
| commit | c15332c44fa50dc44e2ebd1a682048f1e30dc136 (patch) | |
| tree | 9229d46e1274a541aa1b15b6b2f31512b49fb784 /src/shader_recompiler/backend/glasm/emit_glasm_image.cpp | |
| parent | texture_cache: Add image getters (diff) | |
| download | yuzu-c15332c44fa50dc44e2ebd1a682048f1e30dc136.tar.gz yuzu-c15332c44fa50dc44e2ebd1a682048f1e30dc136.tar.xz yuzu-c15332c44fa50dc44e2ebd1a682048f1e30dc136.zip | |
shader: Add IsTextureScaled opcode
Diffstat (limited to 'src/shader_recompiler/backend/glasm/emit_glasm_image.cpp')
| -rw-r--r-- | src/shader_recompiler/backend/glasm/emit_glasm_image.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_image.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_image.cpp index 09e3a9b82..583ed3cf2 100644 --- a/src/shader_recompiler/backend/glasm/emit_glasm_image.cpp +++ b/src/shader_recompiler/backend/glasm/emit_glasm_image.cpp | |||
| @@ -608,6 +608,14 @@ void EmitImageWrite(EmitContext& ctx, IR::Inst& inst, const IR::Value& index, Re | |||
| 608 | ctx.Add("STOREIM.{} {},{},{},{};", format, image, color, coord, type); | 608 | ctx.Add("STOREIM.{} {},{},{},{};", format, image, color, coord, type); |
| 609 | } | 609 | } |
| 610 | 610 | ||
| 611 | void EmitIsTextureScaled(EmitContext& ctx, IR::Inst& inst, const IR::Value& index) { | ||
| 612 | if (!index.IsImmediate()) { | ||
| 613 | throw NotImplementedException("Non-constant texture rescaling"); | ||
| 614 | } | ||
| 615 | UNIMPLEMENTED(); | ||
| 616 | ctx.Add("MOV.S {}.x,-1;", inst); | ||
| 617 | } | ||
| 618 | |||
| 611 | void EmitImageAtomicIAdd32(EmitContext& ctx, IR::Inst& inst, const IR::Value& index, Register coord, | 619 | void EmitImageAtomicIAdd32(EmitContext& ctx, IR::Inst& inst, const IR::Value& index, Register coord, |
| 612 | ScalarU32 value) { | 620 | ScalarU32 value) { |
| 613 | ImageAtomic(ctx, inst, index, coord, value, "ADD.U32"); | 621 | ImageAtomic(ctx, inst, index, coord, value, "ADD.U32"); |