aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/shader/decode/conversion.cpp
diff options
context:
space:
mode:
authorNguyen Dac Nam <nam.kazt.91@gmail.com>2020-02-19 11:40:35 +0700
committerGitHub <noreply@github.com>2020-02-19 11:40:35 +0700
commita57853e0857b6d1450643a205e560c5ee0a5ef8c (patch)
tree089ff102ee78da1f1d5e9a3bb86ae1e36dce1e8c /src/video_core/shader/decode/conversion.cpp
parent92153118abb0d458fa11e6afd4eb0b054db18270 (diff)
shader_conversion: I2F : add Assert for case src_size is Short
Diffstat (limited to 'src/video_core/shader/decode/conversion.cpp')
-rw-r--r--src/video_core/shader/decode/conversion.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/video_core/shader/decode/conversion.cpp b/src/video_core/shader/decode/conversion.cpp
index 7da857af5d..6ead420701 100644
--- a/src/video_core/shader/decode/conversion.cpp
+++ b/src/video_core/shader/decode/conversion.cpp
@@ -86,6 +86,9 @@ u32 ShaderIR::DecodeConversion(NodeBlock& bb, u32 pc) {
if (const u32 offset = static_cast<u32>(instr.conversion.int_src.selector); offset > 0) {
ASSERT(instr.conversion.src_size == Register::Size::Byte ||
instr.conversion.src_size == Register::Size::Short);
+ if (instr.conversion.src_size == Register::Size::Short) {
+ ASSERT(offset == 0 || offset == 2);
+ }
value = SignedOperation(OperationCode::ILogicalShiftRight, input_signed,
std::move(value), Immediate(offset * 8));
}