forked from Imagelibrary/binutils-gdb
* alpha-tdep.c (alpha_extract_return_value): Handle IEEE Quad floats.
(alpha_store_return_value): Error on IEEE Quad floats.
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
2003-06-02 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* alpha-tdep.c (alpha_extract_return_value): Handle IEEE Quad floats.
|
||||
(alpha_store_return_value): Error on IEEE Quad floats.
|
||||
|
||||
* alpha-tdep.c (alpha_extract_return_value): Convert to regcache.
|
||||
(alpha_extract_struct_value_address): Likewise.
|
||||
(alpha_store_return_value): Likewise.
|
||||
|
||||
@@ -401,6 +401,11 @@ alpha_extract_return_value (struct type *valtype, struct regcache *regcache,
|
||||
regcache_cooked_read (regcache, ALPHA_FP0_REGNUM, valbuf);
|
||||
break;
|
||||
|
||||
case 16:
|
||||
regcache_cooked_read_unsigned (regcache, ALPHA_V0_REGNUM, &l);
|
||||
read_memory (l, valbuf, 16);
|
||||
break;
|
||||
|
||||
default:
|
||||
abort ();
|
||||
}
|
||||
@@ -450,6 +455,12 @@ alpha_store_return_value (struct type *valtype, struct regcache *regcache,
|
||||
regcache_cooked_write (regcache, ALPHA_FP0_REGNUM, valbuf);
|
||||
break;
|
||||
|
||||
case 16:
|
||||
/* FIXME: 128-bit long doubles are returned like structures:
|
||||
by writing into indirect storage provided by the caller
|
||||
as the first argument. */
|
||||
error ("Cannot set a 128-bit long double return value.");
|
||||
|
||||
default:
|
||||
abort ();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user