From c7927a3c0ef1d97faf24f1df31baf419e2d92fa1 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 29 Sep 2009 14:17:19 +0000 Subject: bfd * Makefile.am (ALL_MACHINES): Add cpu-rx.lo. (ALL_MACHINES_CFILES): Add cpu-rx.c. (BFD32_BACKENDS): Add elf32-rx.lo. (BFD32_BACKENDS_CFILES): Add elf32-rx.c. * archures.c (bfd_architecture): Add bfd_arch_rx and bfd_mach_rx. Export bfd_rx_arch. (bfd_archures_list): Add bfd_rx_arch. * config.bfd: Add entry for rx-*-elf. * configure.in: Add entries for bfd_elf32_rx_le_vec and bfd_elf32_rx_be_vec. * reloc.c: Add RX relocations. * targets.c: Add RX target vectors. * Makefile.in: Regenerate. * bfd-in2.h: Regenerate. * configure: Regenerate. * libbfd.h: Regenerate. * cpu-rx.c: New file. * elf32-rx.c: New file. binutils * readelf.c: Add support for RX target. * MAINTAINERS: Add DJ and NickC as maintainers for RX. gas * Makefile.am: Add RX target. * configure.in: Likewise. * configure.tgt: Likewise. * read.c (do_repeat_with_expander): New function. * read.h: Provide a prototype for do_repeat_with_expander. * doc/Makefile.am: Add RX target documentation. * doc/all.texi: Likewise. * doc/as.texinfo: Likewise. * Makefile.in: Regenerate. * NEWS: Mention support for RX architecture. * configure: Regenerate. * doc/Makefile.in: Regenerate. * config/rx-defs.h: New file. * config/rx-parse.y: New file. * config/tc-rx.h: New file. * config/tc-rx.c: New file. * doc/c-rx.texi: New file. gas/testsuite * gas/rx: New directory. * gas/rx/*: New set of test cases. * gas/elf/section2.e-rx: New expected output file. * gas/all/gas.exp: Add support for RX target. * gas/elf/elf.exp: Likewise. * gas/lns/lns.exp: Likewise. * gas/macros/macros.exp: Likewise. include * dis-asm.h: Add prototype for print_insn_rx. include/elf * rx.h: New file. include/opcode * rx.h: New file. ld * Makefile.am: Add rules to build RX emulation. * configure.tgt: Likewise. * NEWS: Mention support for RX architecture. * Makefile.in: Regenerate. * emulparams/elf32rx.sh: New file. * emultempl/rxelf.em: New file. opcodes * Makefile.am: Add RX files. * configure.in: Add support for RX target. * disassemble.c: Likewise. * Makefile.in: Regenerate. * configure: Regenerate. * opc2c.c: New file. * rx-decode.c: New file. * rx-decode.opc: New file. * rx-dis.c: New file. --- binutils/ChangeLog | 5 +++++ binutils/MAINTAINERS | 2 ++ binutils/readelf.c | 15 +++++++++++++++ 3 files changed, 22 insertions(+) (limited to 'binutils') diff --git a/binutils/ChangeLog b/binutils/ChangeLog index a6275e1..6a4958d 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2009-09-29 DJ Delorie + + * readelf.c: Add support for RX target. + * MAINTAINERS: Add DJ and NickC as maintainers for RX. + 2009-09-28 Alan Modra * configure.in: Don't invoke configure.tgt on $enable_targets. diff --git a/binutils/MAINTAINERS b/binutils/MAINTAINERS index 6d31632..97fb566 100644 --- a/binutils/MAINTAINERS +++ b/binutils/MAINTAINERS @@ -104,6 +104,8 @@ responsibility among the other maintainers. PPC Geoff Keating PPC Alan Modra PPC vector ext Aldy Hernandez + RX DJ Delorie + RX Nick Clifton s390, s390x Martin Schwidefsky SCORE Mei Ligang SH Alexandre Oliva diff --git a/binutils/readelf.c b/binutils/readelf.c index a57b5ad..15f4ac0 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -130,6 +130,7 @@ #include "elf/pj.h" #include "elf/ppc.h" #include "elf/ppc64.h" +#include "elf/rx.h" #include "elf/s390.h" #include "elf/score.h" #include "elf/sh.h" @@ -604,6 +605,7 @@ guess_is_rela (unsigned int e_machine) case EM_NIOS32: case EM_PPC64: case EM_PPC: + case EM_RX: case EM_S390: case EM_S390_OLD: case EM_SH: @@ -1215,6 +1217,10 @@ dump_relocations (FILE * file, case EM_MICROBLAZE_OLD: rtype = elf_microblaze_reloc_type (type); break; + + case EM_RX: + rtype = elf_rx_reloc_type (type); + break; } if (rtype == NULL) @@ -1887,6 +1893,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_RX: return "Renesas RX"; default: snprintf (buff, sizeof (buff), _(": 0x%x"), e_machine); return buff; @@ -2431,6 +2438,12 @@ get_machine_flags (unsigned e_flags, unsigned e_machine) if ((e_flags & EF_VAX_GFLOAT)) strcat (buf, ", G-Float"); break; + + case EM_RX: + if (e_flags & E_FLAG_RX_64BIT_DOUBLES) + strcat (buf, ", 64-bit doubles"); + if (e_flags & E_FLAG_RX_DSP) + strcat (buf, ", dsp"); } } @@ -8054,6 +8067,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_RX: + return reloc_type == 1; /* R_RX_DIR32. */ case EM_S370: return reloc_type == 1; /* R_I370_ADDR31. */ case EM_S390_OLD: -- cgit v1.1