Blob Blame History Raw
--- crash-5.1.7/gdb-7.0.patch.orig
+++ crash-5.1.7/gdb-7.0.patch
@@ -1838,3 +1838,151 @@
    a = relocation;
    b = val & howto->src_mask;
  
+--- gdb-7.0/bfd/elf32-arm.c.orig
++++ gdb-7.0/bfd/elf32-arm.c
+@@ -3438,7 +3438,6 @@ arm_build_one_stub (struct bfd_hash_entr
+   struct elf32_arm_link_hash_table *htab;
+   asection *stub_sec;
+   bfd *stub_bfd;
+-  bfd_vma stub_addr;
+   bfd_byte *loc;
+   bfd_vma sym_value;
+   int template_size;
+@@ -3471,10 +3470,6 @@ arm_build_one_stub (struct bfd_hash_entr
+ 
+   stub_bfd = stub_sec->owner;
+ 
+-  /* This is the address of the start of the stub.  */
+-  stub_addr = stub_sec->output_section->vma + stub_sec->output_offset
+-    + stub_entry->stub_offset;
+-
+   /* This is the address of the stub destination.  */
+   sym_value = (stub_entry->target_value
+ 	       + stub_entry->target_section->output_offset
+@@ -3660,16 +3655,14 @@ find_stub_size_and_template (enum elf32_
+ 
+ static bfd_boolean
+ arm_size_one_stub (struct bfd_hash_entry *gen_entry,
+-		   void * in_arg)
++		   void * in_arg __attribute__ ((unused)))
+ {
+   struct elf32_arm_stub_hash_entry *stub_entry;
+-  struct elf32_arm_link_hash_table *htab;
+   const insn_sequence *template_sequence;
+   int template_size, size;
+ 
+   /* Massage our args to the form they really have.  */
+   stub_entry = (struct elf32_arm_stub_hash_entry *) gen_entry;
+-  htab = (struct elf32_arm_link_hash_table *) in_arg;
+ 
+   BFD_ASSERT((stub_entry->stub_type > arm_stub_none)
+ 	     && stub_entry->stub_type < ARRAY_SIZE(stub_definitions));
+@@ -5147,7 +5140,6 @@ record_vfp11_erratum_veneer (struct bfd_
+   struct bfd_link_hash_entry *bh;
+   bfd_vma val;
+   struct _arm_elf_section_data *sec_data;
+-  int errcount;
+   elf32_vfp11_erratum_list *newerr;
+ 
+   hash_table = elf32_arm_hash_table (link_info);
+@@ -5186,7 +5178,7 @@ record_vfp11_erratum_veneer (struct bfd_
+   myh->forced_local = 1;
+ 
+   /* Link veneer back to calling location.  */
+-  errcount = ++(sec_data->erratumcount);
++  sec_data->erratumcount += 1;
+   newerr = bfd_zmalloc (sizeof (elf32_vfp11_erratum_list));
+ 
+   newerr->type = VFP11_ERRATUM_ARM_VENEER;
+@@ -6035,9 +6027,8 @@ bfd_elf32_arm_vfp11_erratum_scan (bfd *a
+                 {
+                   elf32_vfp11_erratum_list *newerr
+                     = bfd_zmalloc (sizeof (elf32_vfp11_erratum_list));
+-                  int errcount;
+ 
+-                  errcount = ++(elf32_arm_section_data (sec)->erratumcount);
++		  elf32_arm_section_data (sec)->erratumcount += 1;
+ 
+                   newerr->u.b.vfp_insn = veneer_of_insn;
+ 
+@@ -6747,8 +6738,6 @@ elf32_arm_final_link_relocate (reloc_how
+   unsigned long                 r_symndx;
+   bfd_byte *                    hit_data = contents + rel->r_offset;
+   bfd *                         dynobj = NULL;
+-  Elf_Internal_Shdr *           symtab_hdr;
+-  struct elf_link_hash_entry ** sym_hashes;
+   bfd_vma *                     local_got_offsets;
+   asection *                    sgot = NULL;
+   asection *                    splt = NULL;
+@@ -6785,8 +6774,6 @@ elf32_arm_final_link_relocate (reloc_how
+       sgot = bfd_get_section_by_name (dynobj, ".got");
+       splt = bfd_get_section_by_name (dynobj, ".plt");
+     }
+-  symtab_hdr = & elf_symtab_hdr (input_bfd);
+-  sym_hashes = elf_sym_hashes (input_bfd);
+   local_got_offsets = elf_local_got_offsets (input_bfd);
+   r_symndx = ELF32_R_SYM (rel->r_info);
+ 
+@@ -8886,7 +8873,7 @@ elf32_arm_relocate_section (bfd *       
+ 	}
+       else
+ 	{
+-	  bfd_boolean warned;
++	  bfd_boolean warned __attribute__((unused));
+ 
+ 	  RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel,
+ 				   r_symndx, symtab_hdr, sym_hashes,
+@@ -10740,7 +10727,6 @@ elf32_arm_check_relocs (bfd *abfd, struc
+   const Elf_Internal_Rela *rel_end;
+   bfd *dynobj;
+   asection *sreloc;
+-  bfd_vma *local_got_offsets;
+   struct elf32_arm_link_hash_table *htab;
+   bfd_boolean needs_plt;
+   unsigned long nsyms;
+@@ -10763,7 +10749,6 @@ elf32_arm_check_relocs (bfd *abfd, struc
+     }
+ 
+   dynobj = elf_hash_table (info)->dynobj;
+-  local_got_offsets = elf_local_got_offsets (abfd);
+ 
+   symtab_hdr = & elf_symtab_hdr (abfd);
+   sym_hashes = elf_sym_hashes (abfd);
+@@ -12864,10 +12849,8 @@ elf32_arm_output_map_sym (output_arch_sy
+ 			  bfd_vma offset)
+ {
+   static const char *names[3] = {"$a", "$t", "$d"};
+-  struct elf32_arm_link_hash_table *htab;
+   Elf_Internal_Sym sym;
+ 
+-  htab = elf32_arm_hash_table (osi->info);
+   sym.st_value = osi->sec->output_section->vma
+ 		 + osi->sec->output_offset
+ 		 + offset;
+@@ -12962,10 +12945,8 @@ static bfd_boolean
+ elf32_arm_output_stub_sym (output_arch_syminfo *osi, const char *name,
+ 			   bfd_vma offset, bfd_vma size)
+ {
+-  struct elf32_arm_link_hash_table *htab;
+   Elf_Internal_Sym sym;
+ 
+-  htab = elf32_arm_hash_table (osi->info);
+   sym.st_value = osi->sec->output_section->vma
+ 		 + osi->sec->output_offset
+ 		 + offset;
+@@ -12982,7 +12963,6 @@ arm_map_one_stub (struct bfd_hash_entry 
+ {
+   struct elf32_arm_stub_hash_entry *stub_entry;
+   struct bfd_link_info *info;
+-  struct elf32_arm_link_hash_table *htab;
+   asection *stub_sec;
+   bfd_vma addr;
+   char *stub_name;
+@@ -12999,7 +12979,6 @@ arm_map_one_stub (struct bfd_hash_entry 
+ 
+   info = osi->info;
+ 
+-  htab = elf32_arm_hash_table (info);
+   stub_sec = stub_entry->stub_sec;
+ 
+   /* Ensure this stub is attached to the current section being