summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--target-ppc/op.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target-ppc/op.c b/target-ppc/op.c
index b284798dc7..3a2f5f85b4 100644
--- a/target-ppc/op.c
+++ b/target-ppc/op.c
@@ -777,7 +777,7 @@ void OPPROTO op_adde_64 (void)
 /* add immediate */
 PPC_OP(addi)
 {
-    T0 += PARAM(1);
+    T0 += (int32_t)PARAM(1);
     RETURN();
 }
 
@@ -1074,7 +1074,7 @@ void OPPROTO op_subfe_64 (void)
 /* substract from immediate carrying */
 void OPPROTO op_subfic (void)
 {
-    T0 = PARAM1 + ~T0 + 1;
+    T0 = (int32_t)PARAM1 + ~T0 + 1;
     if ((uint32_t)T0 <= (uint32_t)PARAM1) {
         xer_ca = 1;
     } else {