2001-11-14 Jim Blandy <jimb@redhat.com>
+ * s390-tdep.c (s390_extract_return_value): Returned `float' values
+ can simply be copied bitwise from the registers into the value
+ object's buffer.
+
* s390-tdep.c (s390_get_frame_info): Initialize SP's element of
the frame's saved_regs array correctly.
int len = TYPE_LENGTH (valtype);
if (TYPE_CODE (valtype) == TYPE_CODE_FLT)
- {
- if (len > (TARGET_FLOAT_BIT >> 3))
- memcpy (valbuf, ®buf[REGISTER_BYTE (S390_FP0_REGNUM)], len);
- else
- {
- /* float */
- DOUBLEST val;
-
- floatformat_to_doublest (&floatformat_ieee_double_big,
- ®buf[REGISTER_BYTE (S390_FP0_REGNUM)],
- &val);
- store_floating (valbuf, len, val);
- }
- }
+ memcpy (valbuf, ®buf[REGISTER_BYTE (S390_FP0_REGNUM)], len);
else
{
int offset = 0;