Skip to content
  • sof's avatar
    [project @ 2002-01-29 02:41:21 by sof] · 9efa7107
    sof authored
    PEi386/COFF: handle relocation overflows, i.e., if a section is
    marked with the flag (MY)IMAGE_SCN_LNK_NRELOC_OVFL, then
    the first entry in the relocation table holds the 32-bit
    relocation count rather than 16-bit number in the section header.
    Apparently, a version of the MS PE spec exists that spells this
    out, but haven't been able to locate it (perhaps people on the
    'inside' could try to locate an up-to-date version...?) winnt.h
    is clear enough about it though (as is the GNU libbfd sources).
    
    This is the Right Way to compute the relocation count, but
    unfortunately libbfd / GNU ld is generating bogus output
    when the reloc field overflows (causing objdump/nm etc. to
    crash when trying to read the generated output!) Looking into it.
    
    Once this has been cleared up/fixed, the splitting up of HSstd.o
    (and HSwin32.o) should be a thing of the past. I've taken the
    liberty of disabling the suspiciously-large-reloc-section test
    already.
    9efa7107