- {
- AVR_REG_W = 24,
- AVR_REG_X = 26,
- AVR_REG_Y = 28,
- AVR_FP_REGNUM = 28,
- AVR_REG_Z = 30,
-
- AVR_SREG_REGNUM = 32,
- AVR_SP_REGNUM = 33,
- AVR_PC_REGNUM = 34,
-
- AVR_NUM_REGS = 32 + 1 /*SREG*/ + 1 /*SP*/ + 1 /*PC*/,
- AVR_NUM_REG_BYTES = 32 + 1 /*SREG*/ + 2 /*SP*/ + 4 /*PC*/,
-
- AVR_PC_REG_INDEX = 35, /* index into array of registers */
-
- AVR_MAX_PROLOGUE_SIZE = 56, /* bytes */
-
- /* Count of pushed registers. From r2 to r17 (inclusively), r28, r29 */
- AVR_MAX_PUSHES = 18,
-
- /* Number of the last pushed register. r17 for current avr-gcc */
- AVR_LAST_PUSHED_REGNUM = 17,
-
- /* FIXME: TRoth/2002-01-??: Can we shift all these memory masks left 8
- bits? Do these have to match the bfd vma values?. It sure would make
- things easier in the future if they didn't need to match.
-
- Note: I chose these values so as to be consistent with bfd vma
- addresses.
-
- TRoth/2002-04-08: There is already a conflict with very large programs
- in the mega128. The mega128 has 128K instruction bytes (64K words),
- thus the Most Significant Bit is 0x10000 which gets masked off my
- AVR_MEM_MASK.
-
- The problem manifests itself when trying to set a breakpoint in a
- function which resides in the upper half of the instruction space and
- thus requires a 17-bit address.
-
- For now, I've just removed the EEPROM mask and changed AVR_MEM_MASK
- from 0x00ff0000 to 0x00f00000. Eeprom is not accessible from gdb yet,
- but could be for some remote targets by just adding the correct offset
- to the address and letting the remote target handle the low-level
- details of actually accessing the eeprom. */
-
- AVR_IMEM_START = 0x00000000, /* INSN memory */
- AVR_SMEM_START = 0x00800000, /* SRAM memory */
+{
+ AVR_REG_W = 24,
+ AVR_REG_X = 26,
+ AVR_REG_Y = 28,
+ AVR_FP_REGNUM = 28,
+ AVR_REG_Z = 30,
+
+ AVR_SREG_REGNUM = 32,
+ AVR_SP_REGNUM = 33,
+ AVR_PC_REGNUM = 34,
+
+ AVR_NUM_REGS = 32 + 1 /*SREG*/ + 1 /*SP*/ + 1 /*PC*/,
+ AVR_NUM_REG_BYTES = 32 + 1 /*SREG*/ + 2 /*SP*/ + 4 /*PC*/,
+
+ AVR_PC_REG_INDEX = 35, /* index into array of registers */
+
+ AVR_MAX_PROLOGUE_SIZE = 56, /* bytes */
+
+ /* Count of pushed registers. From r2 to r17 (inclusively), r28, r29 */
+ AVR_MAX_PUSHES = 18,
+
+ /* Number of the last pushed register. r17 for current avr-gcc */
+ AVR_LAST_PUSHED_REGNUM = 17,
+
+ /* FIXME: TRoth/2002-01-??: Can we shift all these memory masks left 8
+ bits? Do these have to match the bfd vma values?. It sure would make
+ things easier in the future if they didn't need to match.
+
+ Note: I chose these values so as to be consistent with bfd vma
+ addresses.
+
+ TRoth/2002-04-08: There is already a conflict with very large programs
+ in the mega128. The mega128 has 128K instruction bytes (64K words),
+ thus the Most Significant Bit is 0x10000 which gets masked off my
+ AVR_MEM_MASK.
+
+ The problem manifests itself when trying to set a breakpoint in a
+ function which resides in the upper half of the instruction space and
+ thus requires a 17-bit address.
+
+ For now, I've just removed the EEPROM mask and changed AVR_MEM_MASK
+ from 0x00ff0000 to 0x00f00000. Eeprom is not accessible from gdb yet,
+ but could be for some remote targets by just adding the correct offset
+ to the address and letting the remote target handle the low-level
+ details of actually accessing the eeprom. */
+
+ AVR_IMEM_START = 0x00000000, /* INSN memory */
+ AVR_SMEM_START = 0x00800000, /* SRAM memory */