recompiler: deduplication cleanup

This commit is contained in:
nmzik
2026-08-17 04:02:33 +02:00
parent 0f3540b1ff
commit e7c8bcb3a4
8 changed files with 42 additions and 57 deletions
@@ -1,18 +1,16 @@
#include "graphics/shader/recompiler/ir/ValueProgram.h"
#include "graphics/shader/shader.h"
#include <fmt/format.h>
#include <map>
#include <unordered_set>
namespace Libs::Graphics::ShaderRecompiler::IR {
namespace {
bool Fail(std::string* error, const std::string& message) {
if (error != nullptr) {
*error = message;
}
return false;
}
using ShaderError::Fail;
namespace {
bool IsRegisterGet(ValueOpcode opcode) {
switch (opcode) {
@@ -2,6 +2,7 @@
#include "graphics/shader/recompiler/ir/ValueProgram.h"
#include "graphics/shader/recompiler/ir/passes/SrtWalker.h"
#include "graphics/shader/shader.h"
#include <algorithm>
#include <fmt/format.h>
@@ -215,11 +216,9 @@ private:
};
bool Fail(uint32_t pc, std::string* error, const std::string& reason) const {
if (error != nullptr) {
*error = fmt::format("shader resource tracking: hash=0x{:016x} stage={} pc=0x{:08x} {}",
m_program.shader_hash, StageName(m_program.stage), pc, reason);
}
return false;
return ShaderError::Fail(
error, fmt::format("shader resource tracking: hash=0x{:016x} stage={} pc=0x{:08x} {}",
m_program.shader_hash, StageName(m_program.stage), pc, reason));
}
struct AddressPart {
@@ -1,6 +1,7 @@
#include "graphics/shader/recompiler/ir/passes/SrtWalker.h"
#include "graphics/shader/recompiler/ir/ValueProgram.h"
#include "graphics/shader/shader.h"
#include <algorithm>
#include <bit>
@@ -314,10 +315,7 @@ private:
};
bool Fail(uint32_t pc, std::string* error, const std::string& message) const {
if (error != nullptr) {
*error = Diagnostic(m_program, pc, message);
}
return false;
return ShaderError::Fail(error, Diagnostic(m_program, pc, message));
}
bool Collect(Value value, uint32_t use_pc, std::string* error) {
@@ -434,10 +432,7 @@ public:
private:
bool Fail(std::string* error, const std::string& message) const {
if (error != nullptr) {
*error = Diagnostic(m_program, m_use_pc, message);
}
return false;
return ShaderError::Fail(error, Diagnostic(m_program, m_use_pc, message));
}
bool EvaluateWide(Value value, uint64_t& result, std::string* error) {