This is the mail archive of the binutils@sources.redhat.com 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]

PATCH: Fix ELF (Re: The Linux binutils 2.11.92.0.12 is released.)


On Tue, Nov 27, 2001 at 06:00:22PM +0100, Johannes Stezenbach wrote:
> Hi,
> 
> On Mon, Nov 26, 2001 at 09:28:59PM -0800, H . J . Lu wrote:
> > Please report any bugs related to binutils 2.11.92.0.12 to hjl@lucon.org.
> 
> I tried to use binutils-2.11.92.0.12 with gcc-3.0.2 to compile
> the linux kernel from linux-mips.sourceforge.net for a VR4121 CPU
> (littel endian, target mipsel-linux).
> 
> a) The linker chrashes trying to create the object file for the
>    embedded initrd ramdisk:
> 
> make CFLAGS="-I /home/js/MIPS/kernel/build/linux-2.4.14-mips/include/asm/gcc -D__KERNEL__ -I/home/js/MIPS/kernel/build/linux-2.4.14-mips/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -G 0 -mno-abicalls -fno-pic -mips2 -Wa,-m4100,--trap -pipe " -C  arch/mips/ramdisk
> make[1]: Entering directory `/home/js/MIPS/kernel/build/linux-2.4.14-mips/arch/mips/ramdisk'
> echo "O_FORMAT:  " elf32-tradlittlemips
> O_FORMAT:   elf32-tradlittlemips
> mipsel-linux-ld -G 0 -T ld.script -b binary --oformat elf32-tradlittlemips -o ramdisk.o ramdisk.gz
> make[1]: *** [ramdisk.o] Segmentation fault
> make[1]: *** Deleting file `ramdisk.o'
> 
>   The same ramdisk.gz worked with binutils-2.11.92.0.10. The ld.script is:
> OUTPUT_ARCH(mips)
> SECTIONS
> {
>   .initrd :
>   {
>        *(.data)
>   }
> }
> 
> 

I am going to check in this patch to fix it.


H.J.
----
2001-11-27  H.J. Lu <hjl@gnu.org>

	* elflink.h (elf_bfd_discard_info): Skip if the input bfd isn't
	ELF.

Index: elflink.h
===================================================================
RCS file: /work/cvs/gnu/binutils/bfd/elflink.h,v
retrieving revision 1.96.2.1
diff -u -p -r1.96.2.1 elflink.h
--- elflink.h	2001/11/25 19:55:57	1.96.2.1
+++ elflink.h	2001/11/27 18:14:32
@@ -8079,6 +8079,9 @@ elf_bfd_discard_info (info)
     return false;
   for (abfd = info->input_bfds; abfd != NULL; abfd = abfd->link_next)
     {
+      if (bfd_get_flavour (abfd) != bfd_target_elf_flavour)
+	continue;
+
       bed = get_elf_backend_data (abfd);
 
       if ((abfd->flags & DYNAMIC) != 0)


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