aboutsummaryrefslogtreecommitdiff
path: root/include/opcode
diff options
context:
space:
mode:
authorEric B. Weddington <eric.weddington@atmel.com>2008-08-09 05:35:13 +0000
committerEric B. Weddington <eric.weddington@atmel.com>2008-08-09 05:35:13 +0000
commit7b21ac3f455e1854e5ca5c82cc64006d3fbdf923 (patch)
tree6352c107cda6ef9aaa126851229b506391945a04 /include/opcode
parent4baacaa877c3acd90bbed78c04524b104f9f8bdf (diff)
downloadgdb-7b21ac3f455e1854e5ca5c82cc64006d3fbdf923.zip
gdb-7b21ac3f455e1854e5ca5c82cc64006d3fbdf923.tar.gz
gdb-7b21ac3f455e1854e5ca5c82cc64006d3fbdf923.tar.bz2
Add AVR architectures avr25, avr31, avr35, and avr51 to match GCC.
bfd/ * archures.c (bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35, bfd_mach_avr51): New. * bfd-in2.h: Regenerate. * cpu-avr.c (arch_info_struct): Add avr25, avr31, avr35, and avr51 architectures. Change comments to match architecture comments in GCC. (compatible): Add test for new AVR architectures. * elf32-avr.c (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35 and bfd_mach_avr51. (elf32_avr_object_p): Recognize E_AVR_MACH_AVR25, E_AVR_MACH_AVR31, E_AVR_MACH_AVR35 and E_AVR_MACH_AVR51. gas/ * config/tc-avr.c (mcu_types): Add avr25, avr31, avr35, and avr51 architectures. Reorganize list to put mcu types in correct architectures and to order list same as in GCC. Use new ISA definitions in include/opcode/avr.h. * doc/c-avr.texi: Add avr25, avr31, avr35, and avr51 architecture descriptions. Reorganize descriptions to put mcu types in correct architectures and to order lists same as in GCC. include/ * elf/avr.h (E_AVR_MACH_AVR25, E_AVR_MACH_AVR31, E_AVR_MACH_AVR35, E_AVR_MACH_AVR51): Define. (EF_AVR_MACH): Redefine to 0x7F. * opcode/avr.h (AVR_ISA_TINY3, AVR_ISA_ALL, AVR_ISA_USB162): Remove. (AVR_ISA_AVR3): Redefine. (AVR_ISA_AVR1, AVR_ISA_AVR2, AVR_ISA_AVR31, AVR_ISA_AVR35, AVR_ISA_AVR3_ALL, AVR_ISA_AVR4, AVR_ISA_AVR5, AVR_ISA_AVR51, AVR_ISA_AVR6): Define. ld/ * Makefile.am (ALL_EMULATIONS): Add eavr25.o, eavr31.o, eavr35.o, and eavr51.o. Add rules for eavr25.c, eavr31.c, eavr35.c, eavr51.c. * Makefile.in: Regenerate. * configure.tgt (avr-*-*, targ_extra_emuls): Add avr25, avr31, avr35 and avr51. * emulparams/avr25.sh: New file. * emulparams/avr31.sh: New file. * emulparams/avr35.sh: New file. * emulparams/avr51.sh: New file.
Diffstat (limited to 'include/opcode')
-rw-r--r--include/opcode/avr.h26
1 files changed, 18 insertions, 8 deletions
diff --git a/include/opcode/avr.h b/include/opcode/avr.h
index 0093a72..15a034a 100644
--- a/include/opcode/avr.h
+++ b/include/opcode/avr.h
@@ -32,29 +32,39 @@
#define AVR_ISA_MOVW 0x1000 /* device has MOVW */
#define AVR_ISA_TINY1 (AVR_ISA_1200 | AVR_ISA_LPM)
-#define AVR_ISA_PWMx (AVR_ISA_M8 | AVR_ISA_BRK)
#define AVR_ISA_2xxx (AVR_ISA_TINY1 | AVR_ISA_SRAM)
/* For the attiny26 which is missing LPM Rd,Z+. */
#define AVR_ISA_2xxe (AVR_ISA_2xxx | AVR_ISA_LPMX)
#define AVR_ISA_RF401 (AVR_ISA_2xxx | AVR_ISA_MOVW | AVR_ISA_LPMX)
#define AVR_ISA_TINY2 (AVR_ISA_2xxx | AVR_ISA_MOVW | AVR_ISA_LPMX | \
AVR_ISA_SPM | AVR_ISA_BRK)
-#define AVR_ISA_TINY3 (AVR_ISA_TINY2 | AVR_ISA_MEGA)
-#define AVR_ISA_M8 (AVR_ISA_2xxx | AVR_ISA_MUL | AVR_ISA_MOVW | \
- AVR_ISA_LPMX | AVR_ISA_SPM)
#define AVR_ISA_M603 (AVR_ISA_2xxx | AVR_ISA_MEGA)
#define AVR_ISA_M103 (AVR_ISA_M603 | AVR_ISA_ELPM)
-#define AVR_ISA_USB162 (AVR_ISA_M603 | AVR_ISA_MOVW | \
+#define AVR_ISA_M8 (AVR_ISA_2xxx | AVR_ISA_MUL | AVR_ISA_MOVW | \
AVR_ISA_LPMX | AVR_ISA_SPM)
-#define AVR_ISA_AVR3 (AVR_ISA_M603 | AVR_ISA_MOVW | \
- AVR_ISA_LPMX | AVR_ISA_SPM | AVR_ISA_ELPM)
+#define AVR_ISA_PWMx (AVR_ISA_M8 | AVR_ISA_BRK)
#define AVR_ISA_M161 (AVR_ISA_M603 | AVR_ISA_MUL | AVR_ISA_MOVW | \
AVR_ISA_LPMX | AVR_ISA_SPM)
#define AVR_ISA_94K (AVR_ISA_M603 | AVR_ISA_MUL | AVR_ISA_MOVW | AVR_ISA_LPMX)
#define AVR_ISA_M323 (AVR_ISA_M161 | AVR_ISA_BRK)
#define AVR_ISA_M128 (AVR_ISA_M323 | AVR_ISA_ELPM | AVR_ISA_ELPMX)
-#define AVR_ISA_ALL 0xFFFF
+#define AVR_ISA_AVR1 AVR_ISA_TINY1
+#define AVR_ISA_AVR2 AVR_ISA_2xxx
+#define AVR_ISA_AVR25 AVR_ISA_TINY2
+#define AVR_ISA_AVR3 AVR_ISA_M603
+#define AVR_ISA_AVR31 AVR_ISA_M103
+#define AVR_ISA_AVR35 (AVR_ISA_AVR3 | AVR_ISA_MOVW | \
+ AVR_ISA_LPMX | AVR_ISA_SPM | AVR_ISA_BRK)
+#define AVR_ISA_AVR3_ALL (AVR_ISA_AVR3 | AVR_ISA_AVR31 | AVR_ISA_AVR35)
+#define AVR_ISA_AVR4 AVR_ISA_PWMx
+#define AVR_ISA_AVR5 AVR_ISA_M323
+#define AVR_ISA_AVR51 AVR_ISA_M128
+#define AVR_ISA_AVR6 (AVR_ISA_1200 | AVR_ISA_LPM | AVR_ISA_LPMX | \
+ AVR_ISA_SRAM | AVR_ISA_MEGA | AVR_ISA_MUL | \
+ AVR_ISA_ELPM | AVR_ISA_ELPMX | AVR_ISA_SPM | \
+ AVR_ISA_SPM | AVR_ISA_BRK | AVR_ISA_EIND | \
+ AVR_ISA_MOVW)
#define REGISTER_P(x) ((x) == 'r' \
|| (x) == 'd' \