Browse Source
Merge pull request #8667 from Kelebek1/xc3
[SPIRV] Add missed shader defines
pull/15/merge
liamwhite
3 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
3 additions and
2 deletions
-
src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
|
|
|
@ -1306,7 +1306,7 @@ void EmitContext::DefineInputs(const IR::Program& program) { |
|
|
|
subgroup_mask_gt = DefineInput(*this, U32[4], false, spv::BuiltIn::SubgroupGtMaskKHR); |
|
|
|
subgroup_mask_ge = DefineInput(*this, U32[4], false, spv::BuiltIn::SubgroupGeMaskKHR); |
|
|
|
} |
|
|
|
if (info.uses_subgroup_invocation_id || info.uses_subgroup_shuffles || |
|
|
|
if (info.uses_fswzadd || info.uses_subgroup_invocation_id || info.uses_subgroup_shuffles || |
|
|
|
(profile.warp_size_potentially_larger_than_guest && |
|
|
|
(info.uses_subgroup_vote || info.uses_subgroup_mask))) { |
|
|
|
subgroup_local_invocation_id = |
|
|
|
@ -1411,7 +1411,8 @@ void EmitContext::DefineInputs(const IR::Program& program) { |
|
|
|
void EmitContext::DefineOutputs(const IR::Program& program) { |
|
|
|
const Info& info{program.info}; |
|
|
|
const std::optional<u32> invocations{program.invocations}; |
|
|
|
if (info.stores.AnyComponent(IR::Attribute::PositionX) || stage == Stage::VertexB) { |
|
|
|
if (runtime_info.convert_depth_mode || info.stores.AnyComponent(IR::Attribute::PositionX) || |
|
|
|
stage == Stage::VertexB) { |
|
|
|
output_position = DefineOutput(*this, F32[4], invocations, spv::BuiltIn::Position); |
|
|
|
} |
|
|
|
if (info.stores[IR::Attribute::PointSize] || runtime_info.fixed_state_point_size) { |
|
|
|
|