aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/arm/interpreter
diff options
context:
space:
mode:
authorGravatar Lioncash <mathew1800@gmail.com>2014-12-18 20:35:10 -0500
committerGravatar Lioncash <mathew1800@gmail.com>2014-12-18 20:35:14 -0500
commit92c53fe52220630664ae77a4c915d5af768b8adc (patch)
tree937a23b4effeffa4f4a0d123104e70cd95c83fbe /src/core/arm/interpreter
parentb9fc0b4b80c37b949f559fd59ca6c666fc7d19bd (diff)
armemu: Fix SSAT16
The lower-bound would never be negative like it should
Diffstat (limited to 'src/core/arm/interpreter')
-rw-r--r--src/core/arm/interpreter/armemu.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/arm/interpreter/armemu.cpp b/src/core/arm/interpreter/armemu.cpp
index 837875d4..e39ea2ca 100644
--- a/src/core/arm/interpreter/armemu.cpp
+++ b/src/core/arm/interpreter/armemu.cpp
@@ -6084,7 +6084,7 @@ L_stm_s_takeabort:
const u8 rd_idx = BITS(12, 15);
const u8 rn_idx = BITS(0, 3);
const u8 num_bits = BITS(16, 19) + 1;
- const s16 min = (0x8000 >> (16 - num_bits));
+ const s16 min = -(0x8000 >> (16 - num_bits));
const s16 max = (0x7FFF >> (16 - num_bits));
s16 rn_lo = (state->Reg[rn_idx]);
s16 rn_hi = (state->Reg[rn_idx] >> 16);