aboutsummaryrefslogtreecommitdiff
path: root/include/elf/m32c.h
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2005-07-14 22:52:28 +0000
committerJim Blandy <jimb@codesourcery.com>2005-07-14 22:52:28 +0000
commit49f58d10f8827774889f6dbc79a934943be8bc44 (patch)
tree1dc0462a80e4f369927a30ededc3c9328b51dbe5 /include/elf/m32c.h
parent22ec3bd17134c0f453f6ca23350daca6463a4258 (diff)
downloadgdb-49f58d10f8827774889f6dbc79a934943be8bc44.zip
gdb-49f58d10f8827774889f6dbc79a934943be8bc44.tar.gz
gdb-49f58d10f8827774889f6dbc79a934943be8bc44.tar.bz2
ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com> * configure.in: Add cases for Renesas m32c. * configure: Regenerated. bfd/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> Add support for m32c-*-elf (Renesas m32c and m16c). * Makefile.am (ALL_MACHINES): Add cpu-m32c.lo. (ALL_MACHINES_CFILES): Add cpu-m32c.c. (BFD32_BACKENDS): Add elf32-m32c.lo. (BFD32_BACKENDS_CFILES): Add elf32-m32c.c. (cpu-m32c.lo, elf32-m32c.lo): New rules, generated by 'make dep-am'. * Makefile.in: Regenerated. * archures.c (bfd_arch_m32c, bfd_mach_m16c, bfd_mach_m32c): New arch and mach codes. (bfd_m32c_arch): New arch info object. (bfd_archures_list): List bfd_m32c_arch. * bfd-in2.h: Regenerated. * config.bfd: Add case for the m32c. * configure.in: Add case for the m32c. * configure: Regenerated. * cpu-m32c.c, elf32-m32c.c: New files. * libbfd.h: Regenerated. * targets.c (bfd_elf32_m32c_vec): Declare. (_bfd_target_vector): List bfd_elf32_m32c_vec. binutils/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> * readelf.c: #include "elf/m32c.h" (guess_is_rela, dump_relocations, get_machine_name): Add cases for EM_M32C. * Makefile.am (readelf.o): Update dependencies. * Makefile.in: Regenerated. cpu/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> * m32c.cpu, m32c.opc: Machine description for the Renesas M32C. gas/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> Add support for the Renesas M32C. * Makefile.am (CPU_TYPES): List m32c. (TARGET_CPU_CFILES): List config/tc-m32c.c. (TARGET_CPU_HFILES): List config/tc-m32c.h. * configure.in: Add case for m32c. * configure.tgt: Add cases for m32c and m32c-*-elf. * configure: Regenerated. * config/tc-m32c.c, config/tc-m32c.h: New files. * doc/Makefile.am (CPU_DOCS): Add c-m32c.texi. * doc/Makefile.in: Regenerated. * doc/all.texi: Set M32C. * doc/as.texinfo: Add text for the M32C-specific options and line comment characters, and refer to c-m32c.texi. * doc/c-m32c.texi: New file. include/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> * dis-asm.h (print_insn_m32c): New declaration. include/elf/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> Add support for Renesas M32C and M16C. * common.h (EM_M32C): New machine number. * m32c.h: New file. ld/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> Add support for the Renesas M32C and M16C. * Makefile.am (ALL_EMULATIONS): Add eelf32m32c.o. (eelf32m32c.c): New target. * Makefile.in: Regenerated. * configure.tgt: Add case for m32c-*-elf. * emulparams/elf32m32c.sh: New file. opcodes/ChangeLog: 2005-07-14 Jim Blandy <jimb@redhat.com> Add support for the Renesas M32C and M16C. * m32c-asm.c, m32c-desc.c, m32c-dis.c, m32c-ibld.c, m32c-opc.c: New. * m32c-desc.h, m32c-opc.h: New. * Makefile.am (HFILES): List m32c-desc.h and m32c-opc.h. (CFILES): List m32c-asm.c, m32c-desc.c, m32c-dis.c, m32c-ibld.c, m32c-opc.c. (ALL_MACHINES): List m32c-asm.lo, m32c-desc.lo, m32c-dis.lo, m32c-ibld.lo, m32c-opc.lo. (CLEANFILES): List stamp-m32c. (M32C_DEPS): List stamp-m32c, if CGEN_MAINT. (CGEN_CPUS): Add m32c. (m32c-asm.c, m32c-desc.c, m32c-dis.c, m32c-ibld.c, m32c-opc.c) (m32c-desc.h, m32c-opc.h): Depend on M32C_DEPS. (m32c_opc_h): New variable. (stamp-m32c, m32c-asm.lo, m32c-desc.lo, m32c-dis.lo, m32c-ibld.lo) (m32c-opc.lo): New rules. * Makefile.in: Regenerated. * configure.in: Add case for bfd_m32c_arch. * configure: Regenerated. * disassemble.c (ARCH_m32c): New. [ARCH_m32c]: #include "m32c-desc.h". (disassembler) [ARCH_m32c]: Add case for bfd_arch_m32c. (disassemble_init_for_target) [ARCH_m32c]: Same. * cgen-ops.h, cgen-types.h: New files. * Makefile.am (HFILES): List them. * Makefile.in: Regenerated.
Diffstat (limited to 'include/elf/m32c.h')
-rw-r--r--include/elf/m32c.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/include/elf/m32c.h b/include/elf/m32c.h
new file mode 100644
index 0000000..5d8a9a3
--- /dev/null
+++ b/include/elf/m32c.h
@@ -0,0 +1,49 @@
+/* M32C ELF support for BFD.
+ Copyright (C) 2004 Free Software Foundation, Inc.
+
+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_M32C_H
+#define _ELF_M32C_H
+
+#include "elf/reloc-macros.h"
+
+ /* Relocations. */
+ START_RELOC_NUMBERS (elf_m32c_reloc_type)
+ RELOC_NUMBER (R_M32C_NONE, 0)
+ RELOC_NUMBER (R_M32C_16, 1)
+ RELOC_NUMBER (R_M32C_24, 2)
+ RELOC_NUMBER (R_M32C_32, 3)
+ RELOC_NUMBER (R_M32C_8_PCREL, 4)
+ RELOC_NUMBER (R_M32C_16_PCREL, 5)
+ END_RELOC_NUMBERS (R_M32C_max)
+
+#define EF_M32C_CPU_M16C 0x00000075 /* default */
+#define EF_M32C_CPU_M32C 0x00000078 /* m32c */
+#define EF_M32C_CPU_MASK 0x0000007F /* specific cpu bits */
+#define EF_M32C_ALL_FLAGS (EF_M32C_CPU_MASK)
+
+/* Define the data & instruction memory discriminator. In a linked
+ executable, an symbol should be deemed to point to an instruction
+ if ((address & M16C_INSN_MASK) == M16C_INSN_VALUE), and similarly
+ for the data space. See also `ld/emulparams/elf32m32c.sh'. */
+#define M32C_DATA_MASK 0xffc00000
+#define M32C_DATA_VALUE 0x00000000
+#define M32C_INSN_MASK 0xffc00000
+#define M32C_INSN_VALUE 0x00400000
+
+#endif /* _ELF_M32C_H */