diff options
author | Nick Clifton <nickc@redhat.com> | 2007-11-19 12:01:42 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2007-11-19 12:01:42 +0000 |
commit | 3e0873ac4fa365e8c170adcb8b9e1fd727ed16c3 (patch) | |
tree | b3106912cb7617e0c51e7e6fec3d9a1aa1e5cb99 | |
parent | e7faf938594c703cb898154f1eed5278163eb2ec (diff) | |
download | gdb-3e0873ac4fa365e8c170adcb8b9e1fd727ed16c3.zip gdb-3e0873ac4fa365e8c170adcb8b9e1fd727ed16c3.tar.gz gdb-3e0873ac4fa365e8c170adcb8b9e1fd727ed16c3.tar.bz2 |
* readelf.c (is_32bit_abs_reloc): Add support for NIOS relocs.
(is_64bit_abs_reloc): Add support for HPPA relocs.
(is_16bit_abs_reloc): Add support for NIOS relocs.
-rw-r--r-- | binutils/ChangeLog | 6 | ||||
-rw-r--r-- | binutils/readelf.c | 30 |
2 files changed, 23 insertions, 13 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index fe2d199..2747fbc 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,9 @@ +2007-11-19 Nick Clifton <nickc@redhat.com> + + * readelf.c (is_32bit_abs_reloc): Add support for NIOS relocs. + (is_64bit_abs_reloc): Add support for HPPA relocs. + (is_16bit_abs_reloc): Add support for NIOS relocs. + 2007-11-17 Thiemo Seufer <ths@mips.com> * readelf.c (display_mips_gnu_attribute): Recognize -mips32r2 -mfp64 diff --git a/binutils/readelf.c b/binutils/readelf.c index 41cf2bc..d1e4de8 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -8013,6 +8013,9 @@ is_32bit_abs_reloc (unsigned int reloc_type) return reloc_type == 1; /* R_MSP43_32. */ case EM_MT: return reloc_type == 2; /* R_MT_32. */ + case EM_ALTERA_NIOS2: + case EM_NIOS32: + return reloc_type == 1; /* R_NIOS_32. */ case EM_OPENRISC: case EM_OR32: return reloc_type == 1; /* R_OR32_32. */ @@ -8052,10 +8055,6 @@ is_32bit_abs_reloc (unsigned int reloc_type) case EM_XTENSA: return reloc_type == 1; /* R_XTENSA_32. */ - case EM_ALTERA_NIOS2: - /* Fall through (what reloc type is used ?). */ - case EM_NIOS32: - /* Fall through (what reloc type is used ?). */ default: error (_("Missing knowledge of 32-bit reloc types used in DWARF sections of machine number %d\n"), elf_header.e_machine); @@ -8073,30 +8072,30 @@ is_32bit_pcrel_reloc (unsigned int reloc_type) { case EM_386: case EM_486: - return reloc_type == 2; /* R_386_PC32. */ + return reloc_type == 2; /* R_386_PC32. */ case EM_68K: - return reloc_type == 4; /* R_68K_PC32. */ + return reloc_type == 4; /* R_68K_PC32. */ case EM_ALPHA: return reloc_type == 10; /* R_ALPHA_SREL32. */ case EM_ARM: - return reloc_type == 3; /* R_ARM_REL32 */ + return reloc_type == 3; /* R_ARM_REL32 */ case EM_PARISC: - return reloc_type == 0; /* R_PARISC_NONE. *//* FIXME: This reloc is generated, but it may be a bug. */ + return reloc_type == 0; /* R_PARISC_NONE. *//* FIXME: This reloc is generated, but it may be a bug. */ case EM_PPC: return reloc_type == 26; /* R_PPC_REL32. */ case EM_PPC64: - return reloc_type == 26; /* R_PPC64_REL32. */ + return reloc_type == 26; /* R_PPC64_REL32. */ case EM_S390_OLD: case EM_S390: - return reloc_type == 5; /* R_390_PC32. */ + return reloc_type == 5; /* R_390_PC32. */ case EM_SH: - return reloc_type == 2; /* R_SH_REL32. */ + return reloc_type == 2; /* R_SH_REL32. */ case EM_SPARC32PLUS: case EM_SPARCV9: case EM_SPARC: - return reloc_type == 6; /* R_SPARC_DISP32. */ + return reloc_type == 6; /* R_SPARC_DISP32. */ case EM_X86_64: - return reloc_type == 2; /* R_X86_64_PC32. */ + return reloc_type == 2; /* R_X86_64_PC32. */ default: /* Do not abort or issue an error message here. Not all targets use pc-relative 32-bit relocs in their DWARF debug information and we @@ -8119,6 +8118,8 @@ is_64bit_abs_reloc (unsigned int reloc_type) return reloc_type == 2; /* R_ALPHA_REFQUAD. */ case EM_IA_64: return reloc_type == 0x27; /* R_IA64_DIR64LSB. */ + case EM_PARISC: + return reloc_type == 80; /* R_PARISC_DIR64. */ case EM_PPC64: return reloc_type == 38; /* R_PPC64_ADDR64. */ case EM_SPARC32PLUS: @@ -8156,6 +8157,9 @@ is_16bit_abs_reloc (unsigned int reloc_type) case EM_MSP430_OLD: case EM_MSP430: return reloc_type == 5; /* R_MSP430_16_BYTE. */ + case EM_ALTERA_NIOS2: + case EM_NIOS32: + return reloc_type == 9; /* R_NIOS_16. */ default: return FALSE; } |