------- Additional Comments From george dot tovrea at baesystems dot com 2009-09-15 15:32 ------- Subject: RE: GNU ld (GNU Binutils) 2.20.51.20090910 cores
More info: The following is a snippet of the code where the patch was applied and I added debug statements. I added the output (see >>) where the failure appears to be occuring if (!info->shared) { const char *name; // DEBUG DEBUG fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__, __LINE__ ); // DEBUG DEBUG name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING"; bh = NULL; if (!(_bfd_generic_link_add_one_symbol (info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0, NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh))) return FALSE; // DEBUG DEBUG fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__, __LINE__ ); // DEBUG DEBUG h = (struct elf_link_hash_entry *) bh; h->non_elf = 0; h->def_regular = 1; h->type = STT_SECTION; // DEBUG DEBUG fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__, __LINE__ ); // DEBUG DEBUG if (! bfd_elf_link_record_dynamic_symbol (info, h)) return FALSE; // DEBUG DEBUG fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__, __LINE__ ); // DEBUG DEBUG >> DEBUG DEBUG: I AM AT elfxx-mips.c, line 7003 if (! mips_elf_hash_table (info)->use_rld_obj_head) { // DEBUG DEBUG fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__, __LINE__ ); // DEBUG DEBUG >> THE PRECEEDING LINE WAS NOT PRINTED /* __rld_map is a four byte word located in the .data section and is filled in by the rtld to contain a pointer to the _r_debug structure. Its symbol value will be set in _bfd_mips_elf_finish_dynamic_symbol. */ s = bfd_get_section_by_name (abfd, ".rld_map"); // DEBUG DEBUG fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__, __LINE__ ); // DEBUG DEBUG if (s != NULL) { name = SGI_COMPAT (abfd) ? "__rld_map" : "__RLD_MAP"; bh = NULL; if (!(_bfd_generic_link_add_one_symbol (info, abfd, name, BSF_GLOBAL, s, 0, NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh))) return FALSE; h = (struct elf_link_hash_entry *) bh; h->non_elf = 0; h->def_regular = 1; h->type = STT_OBJECT; if (! bfd_elf_link_record_dynamic_symbol (info, h)) return FALSE; } } } -----Original Message----- From: Tovrea, George W (US SSA) Sent: Tuesday, September 15, 2009 8:12 AM To: 'sourceware-bugzi...@sourceware.org' Subject: RE: [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores I tried the patch without success but the problem does appear to be in that area of the code. I inserted some debug statements and found only one was hit before the core. I am trying to narrow it down and I'll keep you up to date on what I find. Regards, Bill T. -----Original Message----- From: nickc at redhat dot com [mailto:sourceware-bugzi...@sourceware.org] Sent: Monday, September 14, 2009 9:26 AM To: Tovrea, George W (US SSA) Subject: [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores ------- Additional Comments From nickc at redhat dot com 2009-09-14 16:26 ------- Hi Bill, > Not sure why you need simple.o since it is "simple" to compile, Because without it I have to create a compiler and then compile simple.cc. Plus I have to hope that I am using the same set of compiler sources as you and that I have configured the compiler in the same way. > but it and xerces 28 are attached Well the simple.o file appears to be missing, but I had a go at creating one for myself. As a result I have created a workaround patch which *may* work. Please give it a go and see if it helps. I am not familiar with this particular area of the linker though, so this is definitely a workaround not a fix. Cheers Nick -- http://sourceware.org/bugzilla/show_bug.cgi?id=10629 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils