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]

Re: Binutils 2.20 release schedule.


Tristan Gingold wrote:

> You can commit.
> I think I will slightly delay the branch creation as the current
> activity is high.

  It's going to take all day; I uncovered a minor can-o'-worms.  I could do a
paper-over-the cracks fix but the problem wasn't really the linker script at
all, it's that sections with long names don't get the right flags set on them
when they're written out(*).

  If it starts to cause a delay, just go ahead with the branch and I'll patch
it afterward, but I don't think it'll be that much longer for the real fix; I
only mention it because I'm going AFK now for a couple of hours.

    cheers,
      DaveK
-- 
(*) - To do with the way the section headers are generated first using dead
reckoning to pre-estimate the eventual positions that the long name strings
will end up at in the string table, which is generated in a later pass toward
the end of writing the COFF object.  Alas, it wants to set the section flags
based on the name... and for long section names, that's not available at
scnhdr_swap_out time(**), because the caller has already replaced it with the
string-table index /NNNNNNN, but hasn't actually built the string table.  I'll
need to pass the long name round-the-back in struct internal_scnhdr or some
similar solution.

(**) - Matter of fact, it's not actually available at any time; the output
file is grown to full size and then the individual strings are seeked-to and
written directly in place, and the full table is never actually assembled in
memory(***).  But that's a mere detail.

(***) - This is different on read, of course.


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