* readelf.c (process_section_headers): Add m16c handler.
authorDJ Delorie <dj@redhat.com>
Fri, 25 Jan 2008 21:08:17 +0000 (21:08 +0000)
committerDJ Delorie <dj@redhat.com>
Fri, 25 Jan 2008 21:08:17 +0000 (21:08 +0000)
(is_16bit_abs_reloc): Recognize R_M32C_16.

binutils/ChangeLog
binutils/readelf.c

index 3a4ec73bf3993d53e9932db5ece33445b7cb1a08..a0d3c71472fe739d3fdefcb7b92cb43c0c51b53f 100644 (file)
@@ -1,3 +1,8 @@
+2008-01-25  DJ Delorie  <dj@redhat.com>
+
+       * readelf.c (process_section_headers): Add m16c handler.
+       (is_16bit_abs_reloc): Recognize R_M32C_16.
+
 2008-01-25  Kai Tietz  <kai.tietz@onevision.com>
 
        * prdbg.c: Correct formatter style use.
index 807b0f1f26ed14ca2ee1464d0e40ef4c42d65250..20a7681f411841a0a29ebfc1829af5e3856995b2 100644 (file)
@@ -4162,6 +4162,16 @@ process_section_headers (FILE *file)
          eh_addr_size = 4;
          break;
        }
+      break;
+
+    case EM_M32C:
+      switch (elf_header.e_flags & EF_M32C_CPU_MASK)
+       {
+       case EF_M32C_CPU_M16C:
+         eh_addr_size = 2;
+         break;
+       }
+      break;
     }
 
 #define CHECK_ENTSIZE_VALUES(section, i, size32, size64) \
@@ -8196,6 +8206,8 @@ is_16bit_abs_reloc (unsigned int reloc_type)
     case EM_IP2K_OLD:
     case EM_IP2K:
       return reloc_type == 1; /* R_IP2K_16.  */
+    case EM_M32C:
+      return reloc_type == 1; /* R_M32C_16 */
     case EM_MSP430_OLD:
     case EM_MSP430:
       return reloc_type == 5; /* R_MSP430_16_BYTE.  */