diff options
Diffstat (limited to 'devel/avr-gdb/files/patch-atmega256x-gdb')
-rw-r--r-- | devel/avr-gdb/files/patch-atmega256x-gdb | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/devel/avr-gdb/files/patch-atmega256x-gdb b/devel/avr-gdb/files/patch-atmega256x-gdb deleted file mode 100644 index 9b013f53b03f..000000000000 --- a/devel/avr-gdb/files/patch-atmega256x-gdb +++ /dev/null @@ -1,66 +0,0 @@ ---- gdb/avr-tdep.c.orig 2008-01-11 14:19:59.000000000 +0100 -+++ gdb/avr-tdep.c 2010-01-19 11:19:47.000000000 +0100 -@@ -181,8 +181,10 @@ - - struct gdbarch_tdep - { -- /* FIXME: TRoth: is there anything to put here? */ -- int foo; -+ /* Size of the PC on the current AVR target. This is equal 2 for -+ most AVRs except for the ATmega256x devices that have a 3-byte -+ PC. */ -+ int pcsize; - }; - - /* Lookup the name of a register given it's number. */ -@@ -1030,22 +1032,29 @@ - on the stack is in big endian byte order, even though most - everything else about the avr is little endian. Ick! */ - -- /* FIXME: number of bytes read here will need updated for the -- mega256 when it is available. */ -- -+ struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); - ULONGEST pc; - unsigned char tmp; -- unsigned char buf[2]; -+ unsigned char buf[3]; - -- read_memory (info->saved_regs[regnum].addr, buf, 2); -+ read_memory (info->saved_regs[regnum].addr, buf, tdep->pcsize); - - /* Convert the PC read from memory as a big-endian to - little-endian order. */ -- tmp = buf[0]; -- buf[0] = buf[1]; -- buf[1] = tmp; -+ if (tdep->pcsize == 2) -+ { -+ tmp = buf[0]; -+ buf[0] = buf[1]; -+ buf[1] = tmp; -+ } -+ else -+ { -+ tmp = buf[0]; -+ buf[0] = buf[2]; -+ buf[2] = tmp; -+ } - -- pc = (extract_unsigned_integer (buf, 2) * 2); -+ pc = (extract_unsigned_integer (buf, tdep->pcsize) * 2); - store_unsigned_integer - (bufferp, register_size (get_frame_arch (next_frame), regnum), - pc); -@@ -1280,6 +1289,11 @@ - case bfd_mach_avr3: - case bfd_mach_avr4: - case bfd_mach_avr5: -+ tdep->pcsize = 2; -+ break; -+ -+ case bfd_mach_avr6: -+ tdep->pcsize = 3; - break; - } - |