diff options
author | Mike Frysinger <vapier@gentoo.org> | 2016-01-12 01:39:47 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2016-01-12 01:42:22 -0500 |
commit | b36d953bced0a4fecdde1823abac70ed7038ee95 (patch) | |
tree | cb5a7b796702c263ad9310ed0a24b645c5ea87ad /sim/mips/ChangeLog | |
parent | 4d625b70fc3fb7facc7159feb8d49b78ac6641f9 (diff) | |
download | gdb-b36d953bced0a4fecdde1823abac70ed7038ee95.zip gdb-b36d953bced0a4fecdde1823abac70ed7038ee95.tar.gz gdb-b36d953bced0a4fecdde1823abac70ed7038ee95.tar.bz2 |
sim: mips: workaround 32-bit addr sign extensions
The mips bfd will sign extend 32-bit addresses into 64-bit values,
so if the entry happens to be 0x80000000 or higher, it is turned to
0xffffffff80000000 which points to memory that doesn't exist.
This wasn't an issue until commit 26f8bf63bf36f9062a5cc1afacf71462a
as all addresses were automatically truncated there in the translate
function to 32-bits. When we cleaned up that code, the full 64-bits
were checked leading to many test failures for mips-sde-elf targets
and such.
Diffstat (limited to 'sim/mips/ChangeLog')
-rw-r--r-- | sim/mips/ChangeLog | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sim/mips/ChangeLog b/sim/mips/ChangeLog index 918c4c0..60af116 100644 --- a/sim/mips/ChangeLog +++ b/sim/mips/ChangeLog @@ -1,3 +1,9 @@ +2016-01-12 Mike Frysinger <vapier@gentoo.org> + + * interp.c: Include elf-bfd.h. + (sim_create_inferior): Truncate pc to 32-bits when EI_CLASS is + ELFCLASS32. + 2016-01-10 Mike Frysinger <vapier@gentoo.org> * config.in, configure: Regenerate. |