qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 19/62] tcg-s390: Fixup qemu_ld/st opcodes.


From: Richard Henderson
Subject: [Qemu-devel] [PATCH 19/62] tcg-s390: Fixup qemu_ld/st opcodes.
Date: Thu, 27 May 2010 13:46:01 -0700

Implement INDEX_op_qemu_ld32.  Fix constraints on qemu_ld64.

Signed-off-by: Richard Henderson <address@hidden>
---
 tcg/s390/tcg-target.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/tcg/s390/tcg-target.c b/tcg/s390/tcg-target.c
index c45d8b5..f21a9ca 100644
--- a/tcg/s390/tcg-target.c
+++ b/tcg/s390/tcg-target.c
@@ -1009,6 +1009,8 @@ static inline void tcg_out_op(TCGContext *s, TCGOpcode 
opc,
         tcg_out_qemu_ld(s, args, LD_INT16);
         break;
 
+    case INDEX_op_qemu_ld32:
+        /* ??? Technically we can use a non-extending instruction.  */
     case INDEX_op_qemu_ld32u:
         tcg_out_qemu_ld(s, args, LD_UINT32);
         break;
@@ -1088,10 +1090,13 @@ static const TCGTargetOpDef s390_op_defs[] = {
     { INDEX_op_qemu_ld16s, { "r", "L" } },
     { INDEX_op_qemu_ld32u, { "r", "L" } },
     { INDEX_op_qemu_ld32s, { "r", "L" } },
+    { INDEX_op_qemu_ld32, { "r", "L" } },
+    { INDEX_op_qemu_ld64, { "r", "L" } },
 
     { INDEX_op_qemu_st8, { "L", "L" } },
     { INDEX_op_qemu_st16, { "L", "L" } },
     { INDEX_op_qemu_st32, { "L", "L" } },
+    { INDEX_op_qemu_st64, { "L", "L" } },
 
 #if defined(__s390x__)
     { INDEX_op_mov_i64, { "r", "r" } },
@@ -1110,9 +1115,6 @@ static const TCGTargetOpDef s390_op_defs[] = {
     { INDEX_op_st32_i64, { "r", "r" } },
     { INDEX_op_st_i64, { "r", "r" } },
 
-    { INDEX_op_qemu_ld64, { "L", "L" } },
-    { INDEX_op_qemu_st64, { "L", "L" } },
-
     { INDEX_op_add_i64, { "r", "0", "r" } },
     { INDEX_op_sub_i64, { "r", "0", "r" } },
     { INDEX_op_mul_i64, { "r", "0", "r" } },
-- 
1.7.0.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]