forked from Imagelibrary/binutils-gdb
* amd64-tdep.c (amd64_return_value): Revert previous change
that used TYPE_LENGTH directly.
* bfin-tdep.c (bfin_extract_return_value): Likewise.
(bfin_store_return_value): Likewise.
* cris-tdep.c (cris_store_return_value): Likewise.
(cris_extract_return_value): Likewise.
* h8300-tdep.c (h8300_extract_return_value): Likewise.
* hppa-tdep.c (hppa64_return_value): Likewise.
* lm32-tdep.c (lm32_store_return_value): Likewise.
* microblaze-tdep.c (microblaze_store_return_value): Likewise.
* spu-tdep.c (spu_value_from_register): Likewise.
* vax-tdep.c (vax_return_value): Likewise.
This commit is contained in:
@@ -751,12 +751,12 @@ h8300_extract_return_value (struct type *type, struct regcache *regcache,
|
||||
int len = TYPE_LENGTH (type);
|
||||
ULONGEST c, addr;
|
||||
|
||||
switch (TYPE_LENGTH (type))
|
||||
switch (len)
|
||||
{
|
||||
case 1:
|
||||
case 2:
|
||||
regcache_cooked_read_unsigned (regcache, E_RET0_REGNUM, &c);
|
||||
store_unsigned_integer (valbuf, TYPE_LENGTH (type), byte_order, c);
|
||||
store_unsigned_integer (valbuf, len, byte_order, c);
|
||||
break;
|
||||
case 4: /* Needs two registers on plain H8/300 */
|
||||
regcache_cooked_read_unsigned (regcache, E_RET0_REGNUM, &c);
|
||||
@@ -768,9 +768,8 @@ h8300_extract_return_value (struct type *type, struct regcache *regcache,
|
||||
if (TYPE_CODE (type) == TYPE_CODE_INT)
|
||||
{
|
||||
regcache_cooked_read_unsigned (regcache, E_RET0_REGNUM, &addr);
|
||||
c = read_memory_unsigned_integer ((CORE_ADDR) addr,
|
||||
TYPE_LENGTH (type), byte_order);
|
||||
store_unsigned_integer (valbuf, TYPE_LENGTH (type), byte_order, c);
|
||||
c = read_memory_unsigned_integer ((CORE_ADDR) addr, len, byte_order);
|
||||
store_unsigned_integer (valbuf, len, byte_order, c);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user