Handle Iop_ReinterpF32asI32 and Iop_ReinterpI32asF32 in insn selection.
git-svn-id: svn://svn.valgrind.org/vex/trunk@2234 8f6e269a-dfd6-0310-a8e1-e2731360e62c
diff --git a/priv/host_s390_isel.c b/priv/host_s390_isel.c
index 4cdf443..2bc23e8 100644
--- a/priv/host_s390_isel.c
+++ b/priv/host_s390_isel.c
@@ -1030,7 +1030,7 @@
return dst;
}
- if (unop == Iop_ReinterpF64asI64) {
+ if (unop == Iop_ReinterpF64asI64 || unop == Iop_ReinterpF32asI32) {
dst = newVRegI(env);
h1 = s390_isel_float_expr(env, arg); /* Process the operand */
addInstr(env, s390_insn_move(size, dst, h1));
@@ -1810,7 +1810,7 @@
return op == Iop_F128LOtoF64 ? dst_lo : dst_hi;
}
- if (op == Iop_ReinterpI64asF64) {
+ if (op == Iop_ReinterpI64asF64 || op == Iop_ReinterpI32asF32) {
dst = newVRegF(env);
h1 = s390_isel_int_expr(env, left); /* Process the operand */
addInstr(env, s390_insn_move(size, dst, h1));