aboutsummaryrefslogtreecommitdiff
path: root/src/shader_recompiler/program_header.h
diff options
context:
space:
mode:
authorAmeer J <52414509+ameerj@users.noreply.github.com>2022-03-21 21:24:07 -0400
committerGitHub <noreply@github.com>2022-03-21 21:24:07 -0400
commit75046a3351effbe4054299ec4237cfcf5862fdc2 (patch)
tree4cb9127fa8aa989d55842fd1f87d4cf2677db2ad /src/shader_recompiler/program_header.h
parent82ac66f8a47f32ac530bcacbe375a52ccdc455c7 (diff)
parent536d7ed7b1b42fcae94505318d9bbee30ae21222 (diff)
Merge pull request #8038 from liamwhite/exit-register-detection
shader_recompiler/EXIT: increment output register on failed enable test
Diffstat (limited to 'src/shader_recompiler/program_header.h')
-rw-r--r--src/shader_recompiler/program_header.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/shader_recompiler/program_header.h b/src/shader_recompiler/program_header.h
index bd6c2bfb5e..0cd6597efe 100644
--- a/src/shader_recompiler/program_header.h
+++ b/src/shader_recompiler/program_header.h
@@ -196,6 +196,11 @@ struct ProgramHeader {
return {(bits & 1) != 0, (bits & 2) != 0, (bits & 4) != 0, (bits & 8) != 0};
}
+ [[nodiscard]] bool HasOutputComponents(u32 rt) const noexcept {
+ const u32 bits{omap.target >> (rt * 4)};
+ return (bits & 0xf) != 0;
+ }
+
[[nodiscard]] std::array<PixelImap, 4> GenericInputMap(u32 attribute) const {
const auto& vector{imap_generic_vector[attribute]};
return {vector.x, vector.y, vector.z, vector.w};