This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Revert part of commit 32ec8896025


echo "__thread char *p;" | gcc -c -g -xc - -o thread.o
With current powerpc64le-linux-gcc has this reloc in .debug_info
0000000000000025 0000000d0000004e R_PPC64_DTPREL64 0000000000000000 p + 8000

That stops me looking at .debug_info, which is a bit unfriendly.
~/build/gas-virgin/powerpc64le-linux/binutils/readelf -wi thread.o
readelf: Warning: unable to apply unsupported reloc type 78 to section .debug_info
Older readelf continued on after the warning, dumping .debug_info.
The same happens on x86_64-linux with a different reloc number.

Nick, what do you think?

	* readelf.c (apply_relocations): Don't return FALSE for warnings.

diff --git a/binutils/readelf.c b/binutils/readelf.c
index 9c675ddf1e..91f4c12286 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -13032,7 +13032,6 @@ apply_relocations (Filedata *                 filedata,
 {
   Elf_Internal_Shdr * relsec;
   unsigned char * end = start + size;
-  bfd_boolean res = TRUE;
 
   if (relocs_return != NULL)
     {
@@ -13161,7 +13160,6 @@ apply_relocations (Filedata *                 filedata,
 		warn (_("unable to apply unsupported reloc type %d to section %s\n"),
 		      reloc_type, printable_section_name (filedata, section));
 	      prev_reloc = reloc_type;
-	      res = FALSE;
 	      continue;
 	    }
 
@@ -13171,7 +13169,6 @@ apply_relocations (Filedata *                 filedata,
 	      warn (_("skipping invalid relocation offset 0x%lx in section %s\n"),
 		    (unsigned long) rp->r_offset,
 		    printable_section_name (filedata, section));
-	      res = FALSE;
 	      continue;
 	    }
 
@@ -13180,7 +13177,6 @@ apply_relocations (Filedata *                 filedata,
 	    {
 	      warn (_("skipping invalid relocation symbol index 0x%lx in section %s\n"),
 		    sym_index, printable_section_name (filedata, section));
-	      res = FALSE;
 	      continue;
 	    }
 	  sym = symtab + sym_index;
@@ -13206,7 +13202,6 @@ apply_relocations (Filedata *                 filedata,
 		    get_symbol_type (filedata, ELF_ST_TYPE (sym->st_info)),
 		    printable_section_name (filedata, relsec),
 		    (long int)(rp - relocs));
-	      res = FALSE;
 	      continue;
 	    }
 
@@ -13273,7 +13268,7 @@ apply_relocations (Filedata *                 filedata,
       break;
     }
 
-  return res;
+  return TRUE;
 }
 
 #ifdef SUPPORT_DISASSEMBLY

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]