From 99c513f6aced67d96eb2979128b612cfc5f2bc0d Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Wed, 2 Nov 2011 03:09:11 +0000 Subject: [.] * configure.ac (rl78-*-*) New case. * configure: Regenerate. [bfd] * Makefile.am (ALL_MACHINES): Add cpu-rl78.lo. (ALL_MACHINES_CFILES): Add cpu-rl78.c. (BFD32_BACKENDS): Add elf32-rl78.lo. (BFD32_BACKENDS_CFILES): Add elf32-rl78.c. (Makefile.in): Regenerate. * archures.c (bfd_architecture): Define bfd_arch_rl78. (bfd_archures_list): Add bfd_rl78_arch. * config.bfd: Add rl78-*-elf. * configure.in: Add bfd_elf32_rl78_vec. * reloc.c (bfd_reloc_code_type): Add BFD_RELOC_RL78_* relocations. * targets.c (bfd_target_vector): Add bfd_elf32_rl78_vec. * Makefile.in: Regenerate. * bfd-in2.h: Regenerate. * configure: Regenerate. * libbfd.h: Regenerate. * cpu-rl78.c: New file. * elf32-rl78.c: New file. [binutils] * readelf.c: Include elf/rl78.h (guess_is_rela): Handle EM_RL78. (dump_relocations): Likewise. (get_machine_name): Likewise. (is_32bit_abs_reloc): Likewise. * NEWS: Mention addition of RL78 support. * MAINTAINERS: Add myself as RL78 port maintainer. [gas] * Makefile.am (TARGET_CPU_CFILES): Add tc-rl78.c. (TARGET_CPU_HFILES): Add rc-rl78.h. (EXTRA_DIST): Add rl78-parse.c and rl78-parse.y. (rl78-parse.c, rl78-parse.h, rl78-parse.o, rl78-defs.h): New rules. * Makefile.in: Regenerate. * configure.in: Add rl78 case. * configure: Regenerate. * configure.tgt: Add rl78 case. * config/rl78-defs.h: New file. * config/rl78-parse.y: New file. * config/tc-rl78.c: New file. * config/tc-rl78.h: New file. * NEWS: Add Renesas RL78. * doc/Makefile.am (c-rl78.texi): New. * doc/Makefile.in: Likewise. * doc/all.texi: Enable it. * doc/as.texi: Add it. [include] * dis-asm.h (print_insn_rl78): Declare. [include/elf] * common.h (EM_RL78, EM_78K0R): New. * rl78.h: New. [include/opcode] * rl78.h: New file. [ld] * Makefile.am (ALL_EMULATION_SOURCES): Add eelf32rl78.c. (+eelf32rl78.c): New rule. * Makefile.in: Regenerate. * configure.tgt: Add rl78-*-* case. * emulparams/elf32rl78.sh: New file. * NEWS: Mention addition of Renesas RL78 support. [opcodes] * Makefile.am (TARGET_LIBOPCODES_CFILES): Add rl78-decode.c and rl78-dis.c. (MAINTAINERCLEANFILES): Add rl78-decode.c. (rl78-decode.c): New rule, built from rl78-decode.opc and opc2c. * Makefile.in: Regenerate. * configure.in: Add bfd_rl78_arch case. * configure: Regenerate. * disassemble.c: Define ARCH_rl78. (disassembler): Add ARCH_rl78 case. * rl78-decode.c: New file. * rl78-decode.opc: New file. * rl78-dis.c: New file. --- binutils/ChangeLog | 10 ++++++++++ binutils/MAINTAINERS | 1 + binutils/NEWS | 2 ++ binutils/readelf.c | 9 +++++++++ 4 files changed, 22 insertions(+) (limited to 'binutils') diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 1e3d196..7e80c30 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,13 @@ +2011-11-01 DJ Delorie + + * readelf.c: Include elf/rl78.h + (guess_is_rela): Handle EM_RL78. + (dump_relocations): Likewise. + (get_machine_name): Likewise. + (is_32bit_abs_reloc): Likewise. + * NEWS: Mention addition of RL78 support. + * MAINTAINERS: Add myself as RL78 port maintainer. + 2011-10-28 Ian Lance Taylor * dwarf.c (display_debug_frames): If do_debug_frames_interp, diff --git a/binutils/MAINTAINERS b/binutils/MAINTAINERS index 801d25f..8984df4 100644 --- a/binutils/MAINTAINERS +++ b/binutils/MAINTAINERS @@ -107,6 +107,7 @@ responsibility among the other maintainers. PPC Geoff Keating PPC Alan Modra PPC vector ext Aldy Hernandez + RL78 DJ Delorie RX DJ Delorie RX Nick Clifton s390, s390x Martin Schwidefsky diff --git a/binutils/NEWS b/binutils/NEWS index 10d42ce..087db82 100644 --- a/binutils/NEWS +++ b/binutils/NEWS @@ -1,5 +1,7 @@ -*- text -*- +* Add support for the Renesas RL78 architecture. + Changes in 2.22: * Add support for displaying the contents of .debug.macro sections. diff --git a/binutils/readelf.c b/binutils/readelf.c index 873ed8b..ad7112e 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -134,6 +134,7 @@ #include "elf/pj.h" #include "elf/ppc.h" #include "elf/ppc64.h" +#include "elf/rl78.h" #include "elf/rx.h" #include "elf/s390.h" #include "elf/score.h" @@ -593,6 +594,7 @@ guess_is_rela (unsigned int e_machine) case EM_NIOS32: case EM_PPC64: case EM_PPC: + case EM_RL78: case EM_RX: case EM_S390: case EM_S390_OLD: @@ -1219,6 +1221,10 @@ dump_relocations (FILE * file, rtype = elf_microblaze_reloc_type (type); break; + case EM_RL78: + rtype = elf_rl78_reloc_type (type); + break; + case EM_RX: rtype = elf_rx_reloc_type (type); break; @@ -1978,6 +1984,7 @@ get_machine_name (unsigned e_machine) case EM_CR16_OLD: return "National Semiconductor's CR16"; case EM_MICROBLAZE: return "Xilinx MicroBlaze"; case EM_MICROBLAZE_OLD: return "Xilinx MicroBlaze"; + case EM_RL78: return "Renesas RL78"; case EM_RX: return "Renesas RX"; case EM_METAG: return "Imagination Technologies META processor architecture"; case EM_MCST_ELBRUS: return "MCST Elbrus general purpose hardware architecture"; @@ -9768,6 +9775,8 @@ is_32bit_abs_reloc (unsigned int reloc_type) return reloc_type == 1; /* R_PPC64_ADDR32. */ case EM_PPC: return reloc_type == 1; /* R_PPC_ADDR32. */ + case EM_RL78: + return reloc_type == 1; /* R_RL78_DIR32. */ case EM_RX: return reloc_type == 1; /* R_RX_DIR32. */ case EM_S370: -- cgit v1.1