Fix armeb; CORE_ADDR is uint64_t but 2nd argument of raw_supply() is
expected to be the same size as PC. Therefore, PC was always read as zero for big-endian.
This commit is contained in:
parent
9e80800bb0
commit
93b94eb346
2
external/gpl3/gdb/dist/gdb/arm-nbsd-tdep.c
vendored
2
external/gpl3/gdb/dist/gdb/arm-nbsd-tdep.c
vendored
@ -72,7 +72,7 @@ arm_nbsd_supply_gregset (const struct regset *regset, struct regcache *regcache,
|
|||||||
|
|
||||||
if (regnum == -1 || regnum == ARM_PC_REGNUM)
|
if (regnum == -1 || regnum == ARM_PC_REGNUM)
|
||||||
{
|
{
|
||||||
CORE_ADDR r_pc = gdbarch_addr_bits_remove (regcache->arch (), gregset->pc);
|
uint32_t r_pc = gdbarch_addr_bits_remove (regcache->arch (), gregset->pc);
|
||||||
regcache->raw_supply (ARM_PC_REGNUM, (char *) &r_pc);
|
regcache->raw_supply (ARM_PC_REGNUM, (char *) &r_pc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user