diff options
author | Nick Clifton <nickc@redhat.com> | 2005-10-25 17:40:19 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2005-10-25 17:40:19 +0000 |
commit | 4aa1b05777e410c28f4cf2a6036696a2afab71a5 (patch) | |
tree | 7576195cd3f9c705bdba7e8e76b4e779224019cd /include | |
parent | 65737220058b00e3b5c5c7696f0255b2c2fda805 (diff) | |
download | newlib-4aa1b05777e410c28f4cf2a6036696a2afab71a5.zip newlib-4aa1b05777e410c28f4cf2a6036696a2afab71a5.tar.gz newlib-4aa1b05777e410c28f4cf2a6036696a2afab71a5.tar.bz2 |
Add support for the Z80 processor family
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 6 | ||||
-rw-r--r-- | include/coff/ChangeLog | 5 | ||||
-rw-r--r-- | include/coff/internal.h | 6 | ||||
-rw-r--r-- | include/coff/z80.h | 51 | ||||
-rw-r--r-- | include/dis-asm.h | 1 | ||||
-rw-r--r-- | include/elf/ChangeLog | 5 | ||||
-rw-r--r-- | include/opcode/ChangeLog | 4 |
7 files changed, 75 insertions, 3 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 8f00e91..a958dd2 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,8 +1,10 @@ +2005-10-25 Arnold Metselaar <arnold.metselaar@planet.nl> + + disasm.h: Add declaration for print_insn_z80 + 2005-09-30 Catherine Moore <clm@cm00re.com> * dis-asm.h (print_insn_bfin): Declare. - * elf/bfin.h: New file. - * elf/common.h (EM_BLACKFIN): Define. * opcode/bfin.h: New file. 2005-09-26 Mark Mitchell <mark@codesourcery.com> diff --git a/include/coff/ChangeLog b/include/coff/ChangeLog index ca201a1..a8b66cc 100644 --- a/include/coff/ChangeLog +++ b/include/coff/ChangeLog @@ -1,3 +1,8 @@ +2005-10-25 Arnold Metselaar <arnold.metselaar@planet.nl> + + * internal.h: Add relocation number for Z80 + * z80.h: New file. + 2005-08-18 Alan Modra <amodra@bigpond.net.au> * a29k.h: Delete. diff --git a/include/coff/internal.h b/include/coff/internal.h index 20e06c2..d7a8381 100644 --- a/include/coff/internal.h +++ b/include/coff/internal.h @@ -1,7 +1,7 @@ /* Internal format of COFF object file data structures, for GNU BFD. This file is part of BFD, the Binary File Descriptor library. - Copyright 1999, 2000, 2001, 2002, 2003, 2004 + Copyright 1999, 2000, 2001, 2002, 2003, 2004. 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -715,6 +715,10 @@ struct internal_reloc #define R_IMM4H 0x24 /* high nibble */ #define R_DISP7 0x25 /* djnz displacement */ +/* Z80 modes */ +#define R_OFF8 0x32 /* 8 bit signed abs, for (i[xy]+d) */ +/* R_JR, R_IMM8, R_IMM16, R_IMM32 - as for Z8k */ + /* H8500 modes */ #define R_H8500_IMM8 1 /* 8 bit immediate */ diff --git a/include/coff/z80.h b/include/coff/z80.h new file mode 100644 index 0000000..3c72c10 --- /dev/null +++ b/include/coff/z80.h @@ -0,0 +1,51 @@ +/* coff information for Zilog Z80 + Copyright 2005 Free Software Foundation, Inc. + Contributed by Arnold Metselaar <arnold_m@operamail.com> + + 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, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ + +#define L_LNNO_SIZE 4 +#include "coff/external.h" + +/* z80 backend does not use dots in section names. */ +#undef _TEXT +#define _TEXT "text" +#undef _DATA +#define _DATA "data" +#undef _BSS +#define _BSS "bss" + +/* Type of cpu is stored in flags. */ +#define F_MACHMASK 0xF000 + +#define Z80MAGIC 0x805A + +#define Z80BADMAG(x) (((x).f_magic != Z80MAGIC)) + +/* Relocation directives. */ + +/* This format actually has more bits than we need. */ + +struct external_reloc +{ + char r_vaddr[4]; + char r_symndx[4]; + char r_offset[4]; + char r_type[2]; + char r_stuff[2]; +}; + +#define RELOC struct external_reloc +#define RELSZ 16 diff --git a/include/dis-asm.h b/include/dis-asm.h index dd4e86e..8a02a24 100644 --- a/include/dis-asm.h +++ b/include/dis-asm.h @@ -208,6 +208,7 @@ extern int print_insn_i370 (bfd_vma, disassemble_info *); extern int print_insn_m68hc11 (bfd_vma, disassemble_info *); extern int print_insn_m68hc12 (bfd_vma, disassemble_info *); extern int print_insn_m68k (bfd_vma, disassemble_info *); +extern int print_insn_z80 (bfd_vma, disassemble_info *); extern int print_insn_z8001 (bfd_vma, disassemble_info *); extern int print_insn_z8002 (bfd_vma, disassemble_info *); extern int print_insn_h8300 (bfd_vma, disassemble_info *); diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index cf4b578..485a78e 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,8 @@ +2005-09-30 Catherine Moore <clm@cm00re.com> + + * bfin.h: New file. + * common.h (EM_BLACKFIN): Define. + 2005-10-08 Paul Brook <paul@codesourcery.com> * arm.h: Add prototypes for BFD object attribute routines. diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index 740eb32..1f50c5f 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,7 @@ +2005-09-30 Catherine Moore <clm@cm00re.com> + + * bfin.h: New file. + 2005-10-24 Jan Beulich <jbeulich@novell.com> * ia64.h (enum ia64_opnd): Move memory operand out of set of |