This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: i386 gas is broken
- From: Hans-Peter Nilsson <hp at bitrange dot com>
- To: Alan Modra <amodra at bigpond dot net dot au>
- Cc: <binutils at sourceware dot cygnus dot com>, Nick Clifton <nickc at cygnus dot com>
- Date: Thu, 15 Nov 2001 04:25:33 -0500 (EST)
- Subject: Re: i386 gas is broken
On Thu, 15 Nov 2001, Alan Modra wrote:
> On Thu, Nov 15, 2001 at 04:04:10AM -0500, Hans-Peter Nilsson wrote:
> > On Thu, 15 Nov 2001, Alan Modra wrote:
> > > 2001-11-12 Nick Clifton <nickc@cambridge.redhat.com>
> > >
> > > * frags.c (frag_grow): Use frag_make_room() to grow the
^^^^
> > > obstack.
> > >
> > > Reverting this seems to cure all the problems.
> >
> > That change looks bogus. IIUC, frag_make_room will make a new
^^^^
> > chunk when there's no room, and frag_now->fr_fix will be very
> > wrong for the "growth".
To avoid further confusion:
Had there been a function frag_make_room things would probably
have been different. :-) I (and I guess Nick too) mean
obstack_make_room above.
> The trouble is that we keep pointers to the chunk, and within the
> chunk.
I suppose it can be called a bug that pointers to/within the
frag are trusted before obstack_finish is called.
> They all must be updated when realloc'ing.
>
> I'll commit the revert.
Thanks!
brgds, H-P