Revert "[shader_recompiler] Fix Shuffle handling for Position attributes (#3406)"
This reverts commit 7d81a724ef.
This commit is contained in:
parent
ee428deb1e
commit
4b083b7e6f
|
|
@ -304,9 +304,17 @@ IR::Program TranslateProgram(ObjectPool<IR::Inst>& inst_pool, ObjectPool<IR::Blo
|
||||||
Optimization::GlobalMemoryToStorageBufferPass(program, host_info);
|
Optimization::GlobalMemoryToStorageBufferPass(program, host_info);
|
||||||
Optimization::TexturePass(env, program, host_info);
|
Optimization::TexturePass(env, program, host_info);
|
||||||
|
|
||||||
if (Settings::values.resolution_info.active) {
|
bool should_rescale =
|
||||||
|
#ifdef __ANDROID__
|
||||||
|
Settings::values.resolution_info.active;
|
||||||
|
#else
|
||||||
|
true;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (should_rescale) {
|
||||||
Optimization::RescalingPass(program);
|
Optimization::RescalingPass(program);
|
||||||
}
|
}
|
||||||
|
|
||||||
Optimization::DeadCodeEliminationPass(program);
|
Optimization::DeadCodeEliminationPass(program);
|
||||||
if (Settings::values.renderer_debug) {
|
if (Settings::values.renderer_debug) {
|
||||||
Optimization::VerificationPass(program);
|
Optimization::VerificationPass(program);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,3 @@
|
||||||
// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
|
|
||||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project
|
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
|
@ -66,11 +63,10 @@ void VisitMark(IR::Block& block, IR::Inst& inst) {
|
||||||
}
|
}
|
||||||
if (must_patch_outside) {
|
if (must_patch_outside) {
|
||||||
const auto it{IR::Block::InstructionList::s_iterator_to(inst)};
|
const auto it{IR::Block::InstructionList::s_iterator_to(inst)};
|
||||||
IR::IREmitter ir{block, it};
|
IR::IREmitter ir{block, IR::Block::InstructionList::s_iterator_to(inst)};
|
||||||
IR::Inst* const new_inst{&*block.PrependNewInst(it, inst)};
|
const IR::F32 new_inst{&*block.PrependNewInst(it, inst)};
|
||||||
const IR::F32 new_bitcast{ir.ConvertUToF(32, 32, IR::Value{new_inst})};
|
|
||||||
const IR::F32 up_factor{ir.FPRecip(ir.ResolutionDownFactor())};
|
const IR::F32 up_factor{ir.FPRecip(ir.ResolutionDownFactor())};
|
||||||
const IR::Value converted{ir.FPMul(new_bitcast, up_factor)};
|
const IR::Value converted{ir.FPMul(new_inst, up_factor)};
|
||||||
inst.ReplaceUsesWith(converted);
|
inst.ReplaceUsesWith(converted);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue