diff options
Diffstat (limited to 'binutils/readelf.c')
-rw-r--r-- | binutils/readelf.c | 15 |
1 files changed, 15 insertions, 0 deletions
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), _("<unknown>: 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: |