aboutsummaryrefslogtreecommitdiff
path: root/target-s390x/op_helper.c
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2011-07-14 11:44:11 +0200
committerAlexander Graf <agraf@suse.de>2011-11-14 17:47:26 +0100
commit27b5979d9d5dbc5f2ef21a96481f766bf3959b57 (patch)
tree1614ba5c7063cf21c43ecf9f1c993256a7a5c686 /target-s390x/op_helper.c
parenta3efecb847dd89886f7cd3f71661b2d79ec68072 (diff)
downloadqemu-27b5979d9d5dbc5f2ef21a96481f766bf3959b57.zip
qemu-27b5979d9d5dbc5f2ef21a96481f766bf3959b57.tar.gz
qemu-27b5979d9d5dbc5f2ef21a96481f766bf3959b57.tar.bz2
s390x: add ldeb instruction
While running perl, we encountered the ldeb instruction to be used, so we implement it :). Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-s390x/op_helper.c')
-rw-r--r--target-s390x/op_helper.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/target-s390x/op_helper.c b/target-s390x/op_helper.c
index cd57678..e594118 100644
--- a/target-s390x/op_helper.c
+++ b/target-s390x/op_helper.c
@@ -1631,6 +1631,15 @@ void HELPER(maebr)(uint32_t f1, uint32_t f3, uint32_t f2)
&env->fpu_status);
}
+/* convert 32-bit float to 64-bit float */
+void HELPER(ldeb)(uint32_t f1, uint64_t a2)
+{
+ uint32_t v2;
+ v2 = ldl(a2);
+ env->fregs[f1].d = float32_to_float64(v2,
+ &env->fpu_status);
+}
+
/* convert 64-bit float to 128-bit float */
void HELPER(lxdb)(uint32_t f1, uint64_t a2)
{