diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2021-04-23 12:32:56 +0200 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-23 03:51:29 +0200 |
commit | 57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8 (patch) | |
tree | aa39f92b097eeb339f7e3fa9fde74aae3fcd6987 /src/shader_recompiler/backend | |
parent | shader: Fix VMNMX selector B (diff) | |
download | yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.tar yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.tar.gz yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.tar.bz2 yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.tar.lz yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.tar.xz yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.tar.zst yuzu-57464e3b72ac31fdfe3b0824c0a9fe02e2805cb8.zip |
Diffstat (limited to 'src/shader_recompiler/backend')
-rw-r--r-- | src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp b/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp index 5cc9d0d39..29da2ef70 100644 --- a/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp +++ b/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp @@ -303,7 +303,8 @@ Id EmitGetPatch(EmitContext& ctx, IR::Patch patch) { } const u32 index{IR::GenericPatchIndex(patch)}; const Id element{ctx.Const(IR::GenericPatchElement(patch))}; - const Id pointer{ctx.OpAccessChain(ctx.input_f32, ctx.patches.at(index), element)}; + const Id type{ctx.stage == Stage::TessellationControl ? ctx.output_f32 : ctx.input_f32}; + const Id pointer{ctx.OpAccessChain(type, ctx.patches.at(index), element)}; return ctx.OpLoad(ctx.F32[1], pointer); } |