diff options
author | Alan Modra <amodra@gmail.com> | 2000-03-27 08:39:14 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2000-03-27 08:39:14 +0000 |
commit | adde6300e0ceb74fbe8df6721fd948063c2080cd (patch) | |
tree | 50340425b80fd12f0a7efd11ec9b6a1e90992946 /include | |
parent | e7d0728ac1f3df93167fcad12c53be92ea98dda5 (diff) | |
download | gdb-adde6300e0ceb74fbe8df6721fd948063c2080cd.zip gdb-adde6300e0ceb74fbe8df6721fd948063c2080cd.tar.gz gdb-adde6300e0ceb74fbe8df6721fd948063c2080cd.tar.bz2 |
ATMEL AVR microcontroller support.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 4 | ||||
-rw-r--r-- | include/dis-asm.h | 1 | ||||
-rw-r--r-- | include/elf/ChangeLog | 5 | ||||
-rw-r--r-- | include/elf/avr.h | 58 | ||||
-rw-r--r-- | include/elf/common.h | 4 |
5 files changed, 72 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 0fa1c22..cb15edc 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2000-03-27 Denis Chertykov <denisc@overta.ru> + + * dis-asm.h (print_insn_avr): Declare. + 2000-03-14 Bernd Schmidt <bernds@cygnus.co.uk> * hashtab.h (htab_trav): Modify type so that first arg is of type diff --git a/include/dis-asm.h b/include/dis-asm.h index 874c3b6..6e6c04b 100644 --- a/include/dis-asm.h +++ b/include/dis-asm.h @@ -194,6 +194,7 @@ extern int print_insn_tic30 PARAMS ((bfd_vma, disassemble_info*)); extern int print_insn_vax PARAMS ((bfd_vma, disassemble_info*)); extern int print_insn_tic80 PARAMS ((bfd_vma, disassemble_info*)); extern int print_insn_pj PARAMS ((bfd_vma, disassemble_info*)); +extern int print_insn_avr PARAMS ((bfd_vma, disassemble_info*)); extern void print_arm_disassembler_options PARAMS ((FILE *)); extern void parse_arm_disassembler_option PARAMS ((char *)); diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 5a683e1..e1f68c3 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,8 @@ +2000-03-27 Denis Chertykov <denisc@overta.ru> + + * avr.h: New file. AVR ELF support for BFD. + * common.h: Add AVR magic number. + 2000-03-10 Geoffrey Keating <geoffk@cygnus.com> * mips.h: Add R_MIPS_GNU_REL_HI16, R_MIPS_GNU_REL_LO16, diff --git a/include/elf/avr.h b/include/elf/avr.h new file mode 100644 index 0000000..1527455 --- /dev/null +++ b/include/elf/avr.h @@ -0,0 +1,58 @@ +/* AVR ELF support for BFD. + Copyright (C) 1999, 2000 Free Software Foundation, Inc. + Contributed by Denis Chertykov <denisc@overta.ru> + +This file is part of BFD, the Binary File Descriptor library. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software Foundation, Inc., +59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifndef _ELF_AVR_H +#define _ELF_AVR_H + +#include "elf/reloc-macros.h" + +/* Processor specific flags for the ELF header e_flags field. */ +#define EF_AVR_MACH 0xf + +#define E_AVR_MACH_AVR1 1 +#define E_AVR_MACH_AVR2 2 +#define E_AVR_MACH_AVR3 3 +#define E_AVR_MACH_AVR4 4 + +/* Relocations. */ +START_RELOC_NUMBERS (elf_avr_reloc_type) + RELOC_NUMBER (R_AVR_NONE, 0) + RELOC_NUMBER (R_AVR_32, 1) + RELOC_NUMBER (R_AVR_7_PCREL, 2) + RELOC_NUMBER (R_AVR_13_PCREL, 3) + RELOC_NUMBER (R_AVR_16, 4) + RELOC_NUMBER (R_AVR_16_PM, 5) + RELOC_NUMBER (R_AVR_LO8_LDI, 6) + RELOC_NUMBER (R_AVR_HI8_LDI, 7) + RELOC_NUMBER (R_AVR_HH8_LDI, 8) + RELOC_NUMBER (R_AVR_LO8_LDI_NEG, 9) + RELOC_NUMBER (R_AVR_HI8_LDI_NEG, 10) + RELOC_NUMBER (R_AVR_HH8_LDI_NEG, 11) + RELOC_NUMBER (R_AVR_LO8_LDI_PM, 12) + RELOC_NUMBER (R_AVR_HI8_LDI_PM, 13) + RELOC_NUMBER (R_AVR_HH8_LDI_PM, 14) + RELOC_NUMBER (R_AVR_LO8_LDI_PM_NEG, 15) + RELOC_NUMBER (R_AVR_HI8_LDI_PM_NEG, 16) + RELOC_NUMBER (R_AVR_HH8_LDI_PM_NEG, 17) + RELOC_NUMBER (R_AVR_CALL, 18) + EMPTY_RELOC (R_AVR_max) +END_RELOC_NUMBERS + +#endif /* _ELF_AVR_H */ diff --git a/include/elf/common.h b/include/elf/common.h index 28804e0..fe8c216 100644 --- a/include/elf/common.h +++ b/include/elf/common.h @@ -189,6 +189,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* FR30 magic number - no EABI available. */ #define EM_CYGNUS_FR30 0x3330 +/* AVR magic number + Written in the absense of an ABI. */ +#define EM_AVR 0x1057 + /* See the above comment before you add a new EM_* value here. */ /* Values for e_version */ |