On 31/01/2010 22:32, Sébastien Lorquet wrote: > as is generating garbage and ld and objdump are victims.
Yep. The section headers are full of nonsense. The string table is present and all the long section names are there, but all the section headers containt "/1579551", which is way out of range. We need to debug what's going on in coff_write_object_contents() in the assembler. If you walk through this loop: for (current = abfd->sections; current != NULL; current = current->next) { struct internal_scnhdr section; bfd_boolean is_reloc_section = FALSE; ... checking the contents of 'current' each time, and then seeing what happens to len and string_size here: /* Handle long section names as in PE. This must be compatible with the code in coff_write_symbols and _bfd_coff_final_link. */ if (bfd_coff_long_section_names (abfd)) { size_t len; len = strlen (current->name); if (len > SCNNMLEN) { [ ... more ... ] string_size += len + 1; long_section_names = TRUE; } } ... we should get some idea what's going wrong. cheers, DaveK ------------------------------------------------------------------------------ The Planet: dedicated and managed hosting, cloud storage, colocation Stay online with enterprise data centers and the best network in the business Choose flexible plans and management services without long-term contracts Personal 24x7 support from experience hosting pros just a phone call away. http://p.sf.net/sfu/theplanet-com _______________________________________________ Cegcc-devel mailing list Cegcc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cegcc-devel