Fix range-type "return" command on ARM
On big-endian ARM, "return"ing from a function that returned a range type did not work. This patch strips the range type to treat the function as though it were returning the underlying type instead. Approved-By: Luis Machado <luis.machado@arm.com>
This commit is contained in:
parent
a0bfd1bfa6
commit
47231c30a0
@ -9132,6 +9132,9 @@ arm_store_return_value (struct type *type, struct regcache *regs,
|
||||
struct gdbarch *gdbarch = regs->arch ();
|
||||
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
|
||||
|
||||
while (type->code () == TYPE_CODE_RANGE)
|
||||
type = check_typedef (type->target_type ());
|
||||
|
||||
if (type->code () == TYPE_CODE_FLT)
|
||||
{
|
||||
gdb_byte buf[ARM_FP_REGISTER_SIZE];
|
||||
|
Loading…
x
Reference in New Issue
Block a user