OSDN Git Service

* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle
authorlaw <law>
Tue, 10 Aug 1999 18:51:52 +0000 (18:51 +0000)
committerlaw <law>
Tue, 10 Aug 1999 18:51:52 +0000 (18:51 +0000)
        R_HPPA_SEGBASE and R_HPPA_SEGREL32.
        * cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info
        list.

bfd/ChangeLog
bfd/cpu-hppa.c
bfd/elf-hppa.h

index b1f6a39..228e30d 100644 (file)
@@ -1,3 +1,10 @@
+Tue Aug 10 12:48:09 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle
+       R_HPPA_SEGBASE and R_HPPA_SEGREL32.
+       * cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info
+       list.
+
 Tue Aug 10 00:34:29 1999  Mark P. Mitchell  <mark@codesourcery.com>
                           Ralf Baechle <ralf@uni-koblenz.de>
 
index 5d26a92..5c17743 100644 (file)
@@ -54,6 +54,23 @@ static const bfd_arch_info_type bfd_hppa20_arch =
   &bfd_hppa10_arch,
 };
 
+/* PA2.0 in wide mode */
+static const bfd_arch_info_type bfd_hppa20w_arch =
+{
+  64,                          /* 32 bits in a word */
+  64,                          /* 32 bits in an address */
+  8,                           /* 8 bits in a byte */
+  bfd_arch_hppa,
+  25,                          /* ??? How best to describe wide mode here?  */
+  "hppa",
+  "hppa2.0w",
+  3,
+  false,                       /* Unless we use 1.1 specific features */
+  bfd_default_compatible, 
+  bfd_default_scan ,
+  &bfd_hppa20_arch,
+};
+
 const bfd_arch_info_type bfd_hppa_arch =
 {
   32,                          /* 32 bits in a word */
@@ -67,5 +84,5 @@ const bfd_arch_info_type bfd_hppa_arch =
   false,                       /* 1.1 specific features used */
   bfd_default_compatible, 
   bfd_default_scan ,
-  &bfd_hppa20_arch,
+  &bfd_hppa20w_arch,
 };
index 1fe61e7..44f2238 100644 (file)
@@ -535,6 +535,11 @@ _bfd_elf_hppa_gen_reloc_type (abfd, base_type, format, field, ignore, sym)
        }
       break;
 
+    case R_PARISC_SEGREL32:
+    case R_PARISC_SEGBASE:
+      /* The defaults are fine for these cases.  */
+      break;
+
     default:
       return NULL;
     }