early-access version 2871

This commit is contained in:
pineappleEA 2022-07-29 06:22:28 +02:00
parent 44e7b97bc1
commit 10c7649fae
2 changed files with 4 additions and 3 deletions

View File

@ -1,7 +1,7 @@
yuzu emulator early access yuzu emulator early access
============= =============
This is the source code for early-access 2867. This is the source code for early-access 2871.
## Legal Notice ## Legal Notice

View File

@ -1308,7 +1308,7 @@ void EmitContext::DefineInputs(const IR::Program& program) {
} }
if (info.uses_subgroup_invocation_id || info.uses_subgroup_shuffles || if (info.uses_subgroup_invocation_id || info.uses_subgroup_shuffles ||
(profile.warp_size_potentially_larger_than_guest && (profile.warp_size_potentially_larger_than_guest &&
(info.uses_subgroup_vote || info.uses_subgroup_mask))) { (info.uses_subgroup_vote || info.uses_subgroup_mask || info.uses_fswzadd))) {
subgroup_local_invocation_id = subgroup_local_invocation_id =
DefineInput(*this, U32[1], false, spv::BuiltIn::SubgroupLocalInvocationId); DefineInput(*this, U32[1], false, spv::BuiltIn::SubgroupLocalInvocationId);
} }
@ -1411,7 +1411,8 @@ void EmitContext::DefineInputs(const IR::Program& program) {
void EmitContext::DefineOutputs(const IR::Program& program) { void EmitContext::DefineOutputs(const IR::Program& program) {
const Info& info{program.info}; const Info& info{program.info};
const std::optional<u32> invocations{program.invocations}; 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); output_position = DefineOutput(*this, F32[4], invocations, spv::BuiltIn::Position);
} }
if (info.stores[IR::Attribute::PointSize] || runtime_info.fixed_state_point_size) { if (info.stores[IR::Attribute::PointSize] || runtime_info.fixed_state_point_size) {