From 3633e433774927681b02e1de665a608730f5582c Mon Sep 17 00:00:00 2001
From: ReinUsesLisp <reinuseslisp@airmail.cc>
Date: Tue, 16 Feb 2021 19:49:24 -0300
Subject: shader: Add utility to resolve identities on a value

---
 src/shader_recompiler/frontend/ir/value.cpp | 7 +++++++
 1 file changed, 7 insertions(+)

(limited to 'src/shader_recompiler/frontend/ir/value.cpp')

diff --git a/src/shader_recompiler/frontend/ir/value.cpp b/src/shader_recompiler/frontend/ir/value.cpp
index 9ea61813ba..718314213d 100644
--- a/src/shader_recompiler/frontend/ir/value.cpp
+++ b/src/shader_recompiler/frontend/ir/value.cpp
@@ -79,6 +79,13 @@ IR::Inst* Value::InstRecursive() const {
     return inst;
 }
 
+IR::Value Value::Resolve() const {
+    if (IsIdentity()) {
+        return inst->Arg(0).Resolve();
+    }
+    return *this;
+}
+
 IR::Reg Value::Reg() const {
     ValidateAccess(Type::Reg);
     return reg;
-- 
cgit v1.2.3-70-g09d2